Update of /cvsroot/pure-data/pd/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20931
Modified Files: Tag: desiredata kernel.c Log Message: removed some MAXPDSTRING
Index: kernel.c =================================================================== RCS file: /cvsroot/pure-data/pd/src/Attic/kernel.c,v retrieving revision 1.1.2.57 retrieving revision 1.1.2.58 diff -C2 -d -r1.1.2.57 -r1.1.2.58 *** kernel.c 18 Jul 2007 03:57:00 -0000 1.1.2.57 --- kernel.c 18 Jul 2007 04:16:17 -0000 1.1.2.58 *************** *** 17,20 **** --- 17,21 ---- #include <stdarg.h> #include <string.h> + #include <sstream> #include <fcntl.h> #include <stdio.h> *************** *** 34,37 **** --- 35,40 ---- #define a_index a_w.w_index
+ using namespace std; + /* T.Grill - bit alignment for signal vectors (must be a multiple of 8!) */ /* if undefined no alignment occurs */ *************** *** 1606,1632 **** /* called just after a doublequote in version 1 parsing */ char *binbuf_text_quoted(t_binbuf *x, char *t, char *end) { ! char buf[MAXPDSTRING+1], *bufp=buf, *ebuf = buf+MAXPDSTRING; ! while (t!=end && bufp!=ebuf) { char c = *t++; if (c=='"') break; ! if (c!='\') {*bufp++ = c; continue;} c = *t++; ! if (c=='a') {*bufp++='\a'; continue;} ! if (c=='b') {*bufp++='\b'; continue;} ! if (c=='f') {*bufp++='\f'; continue;} ! if (c=='n') {*bufp++='\n'; continue;} ! if (c=='r') {*bufp++='\r'; continue;} ! if (c=='v') {*bufp++='\v'; continue;} ! if (c=='t') {*bufp++='\t'; continue;} ! if (c=='"') {*bufp++='"'; continue;} ! if (c=='\'){*bufp++='\'; continue;} if (c=='\n'){continue;} /* if (c=='u') ... */ /* if (c=='x') ... */ /* if (isdigit(c)) ... */ ! *bufp++ = c; /* ignore syntax error (should it?) */ } ! *bufp=0; ! binbuf_addv(x,"t",buf); return t; /* ignore syntax error (should it?) */ } --- 1609,1634 ---- /* called just after a doublequote in version 1 parsing */ char *binbuf_text_quoted(t_binbuf *x, char *t, char *end) { ! ostringstream buf; ! while (t!=end) { char c = *t++; if (c=='"') break; ! if (c!='\') {buf << c; continue;} c = *t++; ! if (c=='a') {buf << '\a'; continue;} ! if (c=='b') {buf << '\b'; continue;} ! if (c=='f') {buf << '\f'; continue;} ! if (c=='n') {buf << '\n'; continue;} ! if (c=='r') {buf << '\r'; continue;} ! if (c=='v') {buf << '\v'; continue;} ! if (c=='t') {buf << '\t'; continue;} ! if (c=='"') {buf << '"'; continue;} ! if (c=='\'){buf << '\'; continue;} if (c=='\n'){continue;} /* if (c=='u') ... */ /* if (c=='x') ... */ /* if (isdigit(c)) ... */ ! buf << c; /* ignore syntax error (should it?) */ } ! binbuf_addv(x,"t",buf.str().data()); return t; /* ignore syntax error (should it?) */ } *************** *** 1637,1641 **** /* TODO: double-quotes, braces, test backslashes&dollars */ char *binbuf_text_matju(t_binbuf *x, char *t, char *end) { - char buf[MAXPDSTRING+1], *bufp=buf, *ebuf = buf+MAXPDSTRING; int doll=0; while (t!=end && isspace(*t)) t++; --- 1639,1642 ---- *************** *** 1649,1664 **** if (t==end || isspace(*token)) {binbuf_addv(x,"f",v); return token;} } ! for (; t!=end && bufp!=ebuf && *t!=',' && *t!=';' && !isspace(*t); bufp++) { doll |= t[0]=='$' && t+1!=end && isdigit(t[1]); if (*t=='\') t++; ! if (t!=end) *bufp++ = *t++; } - *bufp=0; if (doll) { ! if (buf[0]!='$') doll=0; ! for (bufp = buf+1; *bufp; bufp++) if (!isdigit(*bufp)) doll=0; ! if (doll) binbuf_addv(x,"$",atoi(buf+1)); ! else binbuf_addv(x,"&",gensym(buf)); ! } else binbuf_addv(x,"t",buf); return t; } --- 1650,1666 ---- if (t==end || isspace(*token)) {binbuf_addv(x,"f",v); return token;} } ! ostringstream buf; ! for (; t!=end && *t!=',' && *t!=';' && !isspace(*t); ) { doll |= t[0]=='$' && t+1!=end && isdigit(t[1]); if (*t=='\') t++; ! if (t!=end) buf << *t++; } if (doll) { ! const char *b = buf.str().data(); ! if (b[0]!='$') doll=0; ! for (b++; *b; b++) if (!isdigit(*b)) doll=0; ! if (doll) binbuf_addv(x,"$",atoi(buf.str().data()+1)); ! else binbuf_addv(x,"&",gensym(buf.str().data())); ! } else binbuf_addv(x,"t",buf.str().data()); return t; }