mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-23 20:09:27 +02:00
MG: removed label
git-svn-id: trunk@364 -
This commit is contained in:
parent
57014a2ff7
commit
e7de97e52a
@ -691,11 +691,8 @@ var
|
|||||||
stack_top : cardinal;
|
stack_top : cardinal;
|
||||||
data_end : cardinal;
|
data_end : cardinal;
|
||||||
{$endif}
|
{$endif}
|
||||||
label
|
|
||||||
_exit;
|
|
||||||
begin
|
begin
|
||||||
if p=nil then
|
if p=nil then exit;
|
||||||
goto _exit;
|
|
||||||
|
|
||||||
i:=0;
|
i:=0;
|
||||||
|
|
||||||
@ -709,28 +706,23 @@ begin
|
|||||||
end;
|
end;
|
||||||
stack_top:=__stkbottom+__stklen;
|
stack_top:=__stkbottom+__stklen;
|
||||||
{ allow all between start of code and end of data }
|
{ allow all between start of code and end of data }
|
||||||
if cardinal(p)<=data_end then
|
if cardinal(p)<=data_end then exit;
|
||||||
goto _exit;
|
|
||||||
{ .bss section }
|
{ .bss section }
|
||||||
if cardinal(p)<=cardinal(heap_at_init) then
|
if cardinal(p)<=cardinal(heap_at_init) then exit;
|
||||||
goto _exit;
|
|
||||||
{ stack can be above heap !! }
|
{ stack can be above heap !! }
|
||||||
|
|
||||||
if (cardinal(p)>=get_ebp) and (cardinal(p)<=stack_top) then
|
if (cardinal(p)>=get_ebp) and (cardinal(p)<=stack_top) then exit;
|
||||||
goto _exit;
|
|
||||||
{$endif go32v2}
|
{$endif go32v2}
|
||||||
|
|
||||||
{ I don't know where the stack is in other OS !! }
|
{ I don't know where the stack is in other OS !! }
|
||||||
{$ifdef win32}
|
{$ifdef win32}
|
||||||
if (cardinal(p)>=$40000) and (p<=HeapOrg) then
|
if (cardinal(p)>=$40000) and (p<=HeapOrg) then exit;
|
||||||
goto _exit;
|
|
||||||
{ inside stack ? }
|
{ inside stack ? }
|
||||||
asm
|
asm
|
||||||
movl %ebp,get_ebp
|
movl %ebp,get_ebp
|
||||||
end;
|
end;
|
||||||
if (cardinal(p)>get_ebp) and
|
if (cardinal(p)>get_ebp) and
|
||||||
(cardinal(p)<Win32StackTop) then
|
(cardinal(p)<Win32StackTop) then exit;
|
||||||
goto _exit;
|
|
||||||
{$endif win32}
|
{$endif win32}
|
||||||
|
|
||||||
if p>=heapptr then
|
if p>=heapptr then
|
||||||
@ -752,8 +744,7 @@ begin
|
|||||||
((pp^.sig=calculate_sig(pp)) and usecrc) or
|
((pp^.sig=calculate_sig(pp)) and usecrc) or
|
||||||
{ special case of the fill_extra_info call }
|
{ special case of the fill_extra_info call }
|
||||||
((pp=heap_valid_last) and usecrc and (pp^.sig=$DEADBEEF)
|
((pp=heap_valid_last) and usecrc and (pp^.sig=$DEADBEEF)
|
||||||
and inside_trace_getmem) then
|
and inside_trace_getmem) then exit
|
||||||
goto _exit
|
|
||||||
else
|
else
|
||||||
begin
|
begin
|
||||||
writeln(ptext^,'corrupted heap_mem_info');
|
writeln(ptext^,'corrupted heap_mem_info');
|
||||||
@ -781,7 +772,7 @@ begin
|
|||||||
{ allocated block }
|
{ allocated block }
|
||||||
if ((pp^.sig=$DEADBEEF) and not usecrc) or
|
if ((pp^.sig=$DEADBEEF) and not usecrc) or
|
||||||
((pp^.sig=calculate_sig(pp)) and usecrc) then
|
((pp^.sig=calculate_sig(pp)) and usecrc) then
|
||||||
goto _exit
|
exit
|
||||||
else
|
else
|
||||||
begin
|
begin
|
||||||
writeln(ptext^,'pointer $',hexstr(longint(p),8),' points into invalid memory block');
|
writeln(ptext^,'pointer $',hexstr(longint(p),8),' points into invalid memory block');
|
||||||
@ -798,7 +789,6 @@ begin
|
|||||||
end;
|
end;
|
||||||
writeln(ptext^,'pointer $',hexstr(longint(p),8),' does not point to valid memory block');
|
writeln(ptext^,'pointer $',hexstr(longint(p),8),' does not point to valid memory block');
|
||||||
runerror(204);
|
runerror(204);
|
||||||
_exit:
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{*****************************************************************************
|
{*****************************************************************************
|
||||||
|
Loading…
Reference in New Issue
Block a user