* fixed Index* for 64 Bit CPUs

* use forward move as much as possible

git-svn-id: trunk@8778 -
This commit is contained in:
florian 2007-10-13 19:06:41 +00:00
parent 342ba323cf
commit 96eaeeaf98

View File

@ -29,7 +29,7 @@ var
begin
if (@dest=@source) or (count<=0) then
exit;
if @dest<@source then
if (@dest<@source) or (@source+count<@dest) then
begin
{ Forward Move }
psrc:=@source;
@ -269,7 +269,8 @@ begin
{ simulate assembler implementations behaviour, which is expected }
{ fpc_pchar_to_ansistr in astrings.inc }
if (len < 0) or
(len > high(PtrUInt) div 2) or
{ is this ever true? }
(len > high(PtrInt)) or
(psrc+len < psrc) then
pend:=pword(high(PtrUInt)-sizeof(word))
else
@ -297,7 +298,7 @@ begin
{ simulate assembler implementations behaviour, which is expected }
{ fpc_pchar_to_ansistr in astrings.inc }
if (len < 0) or
(len > high(PtrUInt) div 4) or
(len > high(PtrInt) div 2) or
(psrc+len < psrc) then
pend:=pdword(high(PtrUInt)-sizeof(dword))
else