mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-30 18:00:43 +02:00
* concatcopy could release a wrong reference because the offset was
increased without restoring the original before the release of a temp
This commit is contained in:
parent
cea68ee35c
commit
6a42a332dd
@ -1258,6 +1258,7 @@ implementation
|
||||
|
||||
var
|
||||
ecxpushed : boolean;
|
||||
oldsourceoffset,
|
||||
helpsize : longint;
|
||||
i : byte;
|
||||
reg8,reg32 : tregister;
|
||||
@ -1274,6 +1275,7 @@ implementation
|
||||
end;
|
||||
|
||||
begin
|
||||
oldsourceoffset:=source.offset;
|
||||
if (not loadref) and
|
||||
((size<=8) or
|
||||
(not(cs_littlesize in aktglobalswitches ) and (size<=12))) then
|
||||
@ -1403,7 +1405,10 @@ implementation
|
||||
maybe_loadself;
|
||||
end;
|
||||
if delsource then
|
||||
ungetiftemp(source);
|
||||
begin
|
||||
source.offset:=oldsourceoffset;
|
||||
ungetiftemp(source);
|
||||
end;
|
||||
end;
|
||||
|
||||
|
||||
@ -2969,7 +2974,12 @@ implementation
|
||||
end.
|
||||
{
|
||||
$Log$
|
||||
Revision 1.6 2001-10-14 11:49:51 jonas
|
||||
Revision 1.7 2001-10-20 17:22:57 peter
|
||||
* concatcopy could release a wrong reference because the offset was
|
||||
increased without restoring the original before the release of
|
||||
a temp
|
||||
|
||||
Revision 1.6 2001/10/14 11:49:51 jonas
|
||||
* finetuned register allocation info for assignments
|
||||
|
||||
Revision 1.5 2001/09/30 21:28:34 peter
|
||||
|
Loading…
Reference in New Issue
Block a user