From: William D. <wdo...@us...> - 2005-02-17 22:14:40
|
Update of /cvsroot/flexml/flexml In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14768 Modified Files: flexml.pl Log Message: Set bufferstack pointer to beginning so multiple invocations of yylex() don"t exhaust the stack; don"t reinitialize statenames[] elements (closes bug #1028705) Index: flexml.pl =================================================================== RCS file: /cvsroot/flexml/flexml/flexml.pl,v retrieving revision 1.42 retrieving revision 1.43 diff -u -d -r1.42 -r1.43 --- flexml.pl 16 Feb 2005 14:54:46 -0000 1.42 +++ flexml.pl 17 Feb 2005 22:14:32 -0000 1.43 @@ -1180,7 +1180,8 @@ my ($state, $tag); print " /* FleXML_init */\n"; - print " if(!statenames) statenames= (const char **)calloc(IMPOSSIBLE,sizeof(char*));\n"; + print " next = bufferstack;\n"; + print " if(!statenames) {statenames= (const char **)calloc(IMPOSSIBLE,sizeof(char*));\n"; for ('PROLOG','DOCTYPE','EPILOG','INCOMMENT','INPI','VALUE1','VALUE2','CDATA') { print " statenames[$_] = NULL;\n"; } @@ -1192,7 +1193,7 @@ print " statenames[$_] = \"$tag\";\n"; } } - + print " }\n"; } elsif ( /^FLEXML_DOCTYPES$/ ) { |