Changeset 63b86a in git


Ignore:
Timestamp:
Nov 7, 2017, 4:43:05 PM (6 years ago)
Author:
Hans Schoenemann <hannes@…>
Branches:
(u'spielwiese', 'fe61d9c35bf7c61f2b6cbf1b56e25e2f08d536cc')
Children:
7dddf4eb3377f8defb3c97c3ae60284cc10eecc1
Parents:
bff7f67068c5483085ae260c59ab1b6cbe1d1bb7
Message:
fix: minor memory leak in string constants (grammar.y)
Location:
Singular
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • Singular/grammar.cc

    rbff7f6 r63b86a  
    756756    1130,  1138,  1150,  1167,  1187,  1191,  1195,  1200,  1204,  1208,
    757757    1212,  1216,  1221,  1227,  1233,  1239,  1245,  1251,  1257,  1269,
    758     1276,  1280,  1317,  1324,  1329,  1342,  1348,  1348,  1351,  1419,
    759     1423,  1452,  1465,  1482,  1491,  1496,  1504,  1516,  1535,  1545,
    760     1564,  1587,  1593,  1605,  1611
     758    1276,  1280,  1317,  1324,  1329,  1342,  1349,  1349,  1352,  1420,
     759    1424,  1453,  1466,  1483,  1492,  1497,  1505,  1517,  1536,  1546,
     760    1565,  1588,  1594,  1606,  1612
    761761};
    762762#endif
     
    36083608/* Line 1464 of yacc.c  */
    36093609#line 1114 "grammar.y"
    3610     { newFile((yyvsp[(2) - (2)].name)); ;}
     3610    { newFile((yyvsp[(2) - (2)].name)); omFree((yyvsp[(2) - (2)].name)); ;}
    36113611    break;
    36123612
     
    39463946    {
    39473947            if (((yyvsp[(1) - (2)].i)!=LIB_CMD)||(jjLOAD((yyvsp[(2) - (2)].name),TRUE))) YYERROR;
     3948            omFree((yyvsp[(2) - (2)].name));
    39483949          ;}
    39493950    break;
     
    39523953
    39533954/* Line 1464 of yacc.c  */
    3954 #line 1352 "grammar.y"
     3955#line 1353 "grammar.y"
    39553956    {
    39563957            if (((yyvsp[(1) - (2)].i)==KEEPRING_CMD) && (myynest==0))
     
    40224023
    40234024/* Line 1464 of yacc.c  */
    4024 #line 1420 "grammar.y"
     4025#line 1421 "grammar.y"
    40254026    {
    40264027            type_cmd(&((yyvsp[(2) - (2)].lv)));
     
    40314032
    40324033/* Line 1464 of yacc.c  */
    4033 #line 1424 "grammar.y"
     4034#line 1425 "grammar.y"
    40344035    {
    40354036            //Print("typ is %d, rtyp:%d\n",$1.Typ(),$1.rtyp);
     
    40594060
    40604061/* Line 1464 of yacc.c  */
    4061 #line 1453 "grammar.y"
     4062#line 1454 "grammar.y"
    40624063    {
    40634064            int i; TESTSETINT((yyvsp[(3) - (5)].lv),i);
     
    40774078
    40784079/* Line 1464 of yacc.c  */
    4079 #line 1466 "grammar.y"
     4080#line 1467 "grammar.y"
    40804081    {
    40814082            if (currentVoice->ifsw==1)
     
    40994100
    41004101/* Line 1464 of yacc.c  */
    4101 #line 1483 "grammar.y"
     4102#line 1484 "grammar.y"
    41024103    {
    41034104            int i; TESTSETINT((yyvsp[(3) - (5)].lv),i);
     
    41134114
    41144115/* Line 1464 of yacc.c  */
    4115 #line 1492 "grammar.y"
     4116#line 1493 "grammar.y"
    41164117    {
    41174118            if (exitBuffer(BT_break)) YYERROR;
     
    41234124
    41244125/* Line 1464 of yacc.c  */
    4125 #line 1497 "grammar.y"
     4126#line 1498 "grammar.y"
    41264127    {
    41274128            if (contBuffer(BT_break)) YYERROR;
     
    41334134
    41344135/* Line 1464 of yacc.c  */
    4135 #line 1505 "grammar.y"
     4136#line 1506 "grammar.y"
    41364137    {
    41374138            /* -> if(!$2) break; $3; continue;*/
     
    41474148
    41484149/* Line 1464 of yacc.c  */
    4149 #line 1517 "grammar.y"
     4150#line 1518 "grammar.y"
    41504151    {
    41514152            /* $2 */
     
    41684169
    41694170/* Line 1464 of yacc.c  */
    4170 #line 1536 "grammar.y"
     4171#line 1537 "grammar.y"
    41714172    {
    41724173            idhdl h = enterid((yyvsp[(2) - (3)].name),myynest,PROC_CMD,&IDROOT,TRUE);
     
    41834184
    41844185/* Line 1464 of yacc.c  */
    4185 #line 1546 "grammar.y"
     4186#line 1547 "grammar.y"
    41864187    {
    41874188            idhdl h = enterid((yyvsp[(1) - (3)].name),myynest,PROC_CMD,&IDROOT,TRUE);
     
    42074208
    42084209/* Line 1464 of yacc.c  */
    4209 #line 1565 "grammar.y"
     4210#line 1566 "grammar.y"
    42104211    {
    42114212            omFree((ADDRESS)(yyvsp[(3) - (4)].name));
     
    42324233
    42334234/* Line 1464 of yacc.c  */
    4234 #line 1588 "grammar.y"
     4235#line 1589 "grammar.y"
    42354236    {
    42364237            // decl. of type proc p(int i)
     
    42434244
    42444245/* Line 1464 of yacc.c  */
    4245 #line 1594 "grammar.y"
     4246#line 1595 "grammar.y"
    42464247    {
    42474248            // decl. of type proc p(i)
     
    42574258
    42584259/* Line 1464 of yacc.c  */
    4259 #line 1606 "grammar.y"
     4260#line 1607 "grammar.y"
    42604261    {
    42614262            iiRETURNEXPR.Copy(&(yyvsp[(3) - (4)].lv));
     
    42684269
    42694270/* Line 1464 of yacc.c  */
    4270 #line 1612 "grammar.y"
     4271#line 1613 "grammar.y"
    42714272    {
    42724273            if ((yyvsp[(1) - (3)].i)==RETURN)
     
    42824283
    42834284/* Line 1464 of yacc.c  */
    4284 #line 4283 "grammar.cc"
     4285#line 4284 "grammar.cc"
    42854286      default: break;
    42864287    }
  • Singular/grammar.y

    rbff7f6 r63b86a  
    11121112filecmd:
    11131113        '<' stringexpr
    1114           { newFile($2); }
     1114          { newFile($2); omFree($2); }
    11151115        ;
    11161116
     
    13431343          {
    13441344            if (($1!=LIB_CMD)||(jjLOAD($2,TRUE))) YYERROR;
     1345            omFree($2);
    13451346          }
    13461347        ;
Note: See TracChangeset for help on using the changeset viewer.