diff options
-rw-r--r-- | Changes | 7 | ||||
-rw-r--r-- | configure.in | 2 | ||||
-rw-r--r-- | src/string2any.c | 6 |
3 files changed, 12 insertions, 3 deletions
@@ -1,5 +1,12 @@ Change log for PD external 'pdstring' +v0.06 + + fixed asymmetricity bug (thanks to iohannes for the report) + +v0.05 + + improved NUL parsing, add in- and outlets + + use static binbufs to avoid segfaults (a la mrpeach's [str]) + v0.03 Thu, 02 Feb 2006 12:57:43 +0100 + automake-ified diff --git a/configure.in b/configure.in index 581f7f8..5f6ae4f 100644 --- a/configure.in +++ b/configure.in @@ -4,7 +4,7 @@ AC_PREREQ(2.5) dnl Some handy macros define([THE_PACKAGE_NAME], [pdstring]) -define([THE_PACKAGE_VERSION], [0.05]) +define([THE_PACKAGE_VERSION], [0.06]) define([THE_PACKAGE_AUTHOR], [moocow@ling.uni-potsdam.de]) AC_INIT(THE_PACKAGE_NAME, THE_PACKAGE_VERSION, THE_PACKAGE_AUTHOR) diff --git a/src/string2any.c b/src/string2any.c index a2b90dc..a79dc0e 100644 --- a/src/string2any.c +++ b/src/string2any.c @@ -87,7 +87,7 @@ typedef struct _string2any static void string2any_atoms(t_string2any *x, int argc, t_atom *argv) { char *s; - int x_argc, a_argc=argc; + int x_argc, a_argc=0; t_atom *x_argv; /*-- allocate --*/ @@ -98,8 +98,10 @@ static void string2any_atoms(t_string2any *x, int argc, t_atom *argv) } /*-- get text --*/ - for (s=x->x_text; argc > 0; argc--, argv++, s++) { + for (s=x->x_text; argc > 0; argc--, a_argc++, argv++, s++) { *s = atom_getfloat(argv); + S2ADEBUG(post("string2any[%p]: a_argc=%d,*s=%d", x, a_argc, *s)); + if ((x->x_eos<0 && !*s) || (*s==x->x_eos)) { break; } /*-- hack: look for eos char --*/ } *s = 0; S2ADEBUG(post("string2any[%p]: text: \"%s\", strlen=%d, argc=%d", x, x->x_text, strlen(x->x_text), a_argc)); |