diff --git a/Parser/Gmsh.tab.cpp b/Parser/Gmsh.tab.cpp index 8a485a39527fe5c33ad7b97f8adf2bdf4ae9677b..ad94fd8fa7274ed08546397a847dac1acef51d74 100644 --- a/Parser/Gmsh.tab.cpp +++ b/Parser/Gmsh.tab.cpp @@ -177,7 +177,7 @@ #line 1 "Gmsh.y" -// $Id: Gmsh.tab.cpp,v 1.127 2001-11-12 15:53:52 geuzaine Exp $ +// $Id: Gmsh.tab.cpp,v 1.128 2001-11-13 08:38:01 geuzaine Exp $ #include <stdarg.h> #ifndef _NOPLUGIN @@ -6166,17 +6166,17 @@ case 383: i = PrintListOfDouble(yyvsp[-3].c,yyvsp[-1].l,tmpstring); if(i<0){ vyyerror("Too few arguments in Sprintf"); - yyval.c = ""; + yyval.c = yyvsp[-3].c; } else if(i>0){ vyyerror("Too many arguments (%d) in Sprintf", i); - yyval.c = ""; + yyval.c = yyvsp[-3].c; } else{ yyval.c = (char*)Malloc((strlen(tmpstring)+1)*sizeof(char)); strcpy(yyval.c, tmpstring); + Free(yyvsp[-3].c); } - Free(yyvsp[-3].c); List_Delete(yyvsp[-1].l); ; break;} diff --git a/Parser/Gmsh.y b/Parser/Gmsh.y index 86cacfe1359c09949cf5b9b3f6e2fdad06c6ca14..ccbfda2923289dcb1e4133dac7cf5f0b46917e48 100644 --- a/Parser/Gmsh.y +++ b/Parser/Gmsh.y @@ -1,6 +1,6 @@ %{ -// $Id: Gmsh.y,v 1.111 2001-11-12 13:33:57 geuzaine Exp $ +// $Id: Gmsh.y,v 1.112 2001-11-13 08:38:01 geuzaine Exp $ #include <stdarg.h> #ifndef _NOPLUGIN @@ -2694,17 +2694,17 @@ StringExpr : i = PrintListOfDouble($3,$5,tmpstring); if(i<0){ vyyerror("Too few arguments in Sprintf"); - $$ = ""; + $$ = $3; } else if(i>0){ vyyerror("Too many arguments (%d) in Sprintf", i); - $$ = ""; + $$ = $3; } else{ $$ = (char*)Malloc((strlen(tmpstring)+1)*sizeof(char)); strcpy($$, tmpstring); + Free($3); } - Free($3); List_Delete($5); } | tSprintf '(' tSTRING '.' tSTRING ')' diff --git a/Parser/Gmsh.yy.cpp b/Parser/Gmsh.yy.cpp index 20e22b9a4ac8bdd1303e7455126e2fa56a51cf79..59e7a57545e690690ebbd561b1bd3170a3a21448 100644 --- a/Parser/Gmsh.yy.cpp +++ b/Parser/Gmsh.yy.cpp @@ -2,7 +2,7 @@ /* A lexical scanner generated by flex */ /* Scanner skeleton version: - * $Header: /cvsroot/gmsh/Parser/Gmsh.yy.cpp,v 1.127 2001-11-12 15:53:52 geuzaine Exp $ + * $Header: /cvsroot/gmsh/Parser/Gmsh.yy.cpp,v 1.128 2001-11-13 08:38:01 geuzaine Exp $ */ #define FLEX_SCANNER @@ -1000,7 +1000,7 @@ char *yytext; #define INITIAL 0 #line 2 "Gmsh.l" -// $Id: Gmsh.yy.cpp,v 1.127 2001-11-12 15:53:52 geuzaine Exp $ +// $Id: Gmsh.yy.cpp,v 1.128 2001-11-13 08:38:01 geuzaine Exp $ #include <stdio.h> #include <stdlib.h>