mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-09-10 12:29:15 +02:00
* apply (adjusted) patch by Blaise.ru: vmtentries is always created since 2008, so treat it as such (also fixes a memory leak in tobjectdef.getcopy)
git-svn-id: trunk@43626 -
This commit is contained in:
parent
ea75253926
commit
3ced30f816
@ -966,8 +966,6 @@ implementation
|
||||
hs : string;
|
||||
{$endif vtentry}
|
||||
begin
|
||||
if not assigned(_class.VMTEntries) then
|
||||
exit;
|
||||
for i:=0 to _class.VMTEntries.Count-1 do
|
||||
begin
|
||||
vmtentry:=pvmtentry(_class.vmtentries[i]);
|
||||
|
@ -910,11 +910,7 @@ implementation
|
||||
|
||||
{ inherit (copy) VMT from parent object }
|
||||
if assigned(_class.childof) then
|
||||
begin
|
||||
if not assigned(_class.childof.vmtentries) then
|
||||
internalerror(200810281);
|
||||
_class.copyvmtentries(_class.childof);
|
||||
end;
|
||||
_class.copyvmtentries(_class.childof);
|
||||
|
||||
{ process all procdefs, we must process the defs to
|
||||
keep the same order as that is written in the source
|
||||
|
@ -7331,11 +7331,7 @@ implementation
|
||||
for i:=0 to ImplementedInterfaces.count-1 do
|
||||
tobjectdef(result).ImplementedInterfaces.Add(TImplementedInterface(ImplementedInterfaces[i]).Getcopy);
|
||||
end;
|
||||
if assigned(vmtentries) then
|
||||
begin
|
||||
tobjectdef(result).vmtentries:=TFPList.Create;
|
||||
tobjectdef(result).copyvmtentries(self);
|
||||
end;
|
||||
tobjectdef(result).copyvmtentries(self);
|
||||
end;
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user