2
0
Эх сурвалжийг харах

* fixed memory leak due to double allocation of typedconstbuilder and wrong
free location

git-svn-id: trunk@30853 -

Jonas Maebe 10 жил өмнө
parent
commit
ce49f5fb41

+ 1 - 2
compiler/ncgcon.pas

@@ -389,7 +389,6 @@ implementation
                         begin
                         begin
                           current_asmdata.getglobaldatalabel(lastlabel.lab);
                           current_asmdata.getglobaldatalabel(lastlabel.lab);
 
 
-                          datatcb:=ctai_typedconstbuilder.create([tcalo_is_lab,tcalo_make_dead_strippable]);
                           { include terminating zero }
                           { include terminating zero }
                           getmem(pc,len+1);
                           getmem(pc,len+1);
                           move(value_str^,pc[0],len);
                           move(value_str^,pc[0],len);
@@ -408,8 +407,8 @@ implementation
                         end;
                         end;
                       else
                       else
                         internalerror(2013120103);
                         internalerror(2013120103);
-                      datatcb.free;
                    end;
                    end;
+                   datatcb.free;
                    lab_str:=lastlabel.lab;
                    lab_str:=lastlabel.lab;
                    entry^.Data:=lastlabel.lab;
                    entry^.Data:=lastlabel.lab;
                 end;
                 end;