From: SourceForge.net <no...@so...> - 2005-10-23 19:17:23
|
Bugs item #1335593, was opened at 2005-10-23 18:46 Message generated for change (Comment added) made by kambi You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104213&aid=1335593&group_id=4213 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: parser Group: None >Status: Closed >Resolution: Fixed Priority: 5 Submitted By: Jimmy (minc3r) >Assigned to: Michalis Kamburelis (kambi) Summary: Memory leak in TParser Initial Comment: Local variable of type TToken is not always de-allocated in the procedures TParser.ParseType and TParser.ParseFieldsVariables (see the included patch). <patch> @@ -1417,6 +1417,7 @@ MethodType.FullDeclaration := TypeName + ' = ' + MethodType.FullDeclaration; U.AddType(MethodType); + FreeAndNil(t); exit; end; end; @@ -1424,11 +1425,13 @@ begin ParseEnum(EnumType, TypeName, d); U.AddType(EnumType); + FreeAndNil(t); Exit; end; SetLength(LCollected, Length(LCollected)-Length(t.Data)); Scanner.UnGetToken(t); end; + FreeAndNil(t); NormalType := TPasType.Create; NormalType.FullDeclaration := LCollected; @@ -1658,7 +1661,10 @@ Items.Add(NewItem); end; end; - finally ItemCollector.Free end; + finally + ItemCollector.Free; + FreeAndNil(t); + end; finally NewItemNames.Free; RawDescriptions.Free; </patch> Cheers, /Jimmy ---------------------------------------------------------------------- >Comment By: Michalis Kamburelis (kambi) Date: 2005-10-23 21:17 Message: Logged In: YES user_id=987895 Thanks for investigating this and for the patch, it's applied and committed now. After about 5 hours since this comment you should see this in public CVS. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104213&aid=1335593&group_id=4213 |