浏览代码

* Fix bug #38063, corner case in Remove() range checking

git-svn-id: trunk@47392 -
michael 4 年之前
父节点
当前提交
4a38d1b34e
共有 1 个文件被更改,包括 1 次插入1 次删除
  1. 1 1
      rtl/objpas/sysutils/syssb.inc

+ 1 - 1
rtl/objpas/sysutils/syssb.inc

@@ -532,7 +532,7 @@ begin
   CheckNegative(RemLength,'RemLength');
   CheckRange(StartIndex,0,Length);
   MoveIndex:=StartIndex+RemLength;
-  CheckRange(MoveIndex,0,Length-1);
+  CheckRange(MoveIndex,0,Length);
   if (Length-Moveindex)>0 then
     Move(FData[MoveIndex],FData[StartIndex],(Length-MoveIndex)*SizeOf(SBChar));
   Length:=Length-RemLength;