diff --git a/rtl/objpas/fgl.pp b/rtl/objpas/fgl.pp
index 40d986176f..9dc1c31a43 100644
--- a/rtl/objpas/fgl.pp
+++ b/rtl/objpas/fgl.pp
@@ -607,7 +607,7 @@ begin
     there. Otherwise, we could accidentally have there a copy of some item
     on the list, and accidentally Deref it too soon.
     See http://bugs.freepascal.org/view.php?id=20005. }
-  FillChar(InternalItems[FCount]^, (FCapacity+1-FCount) * FItemSize, #0);
+  FillChar(InternalItems[FCount]^, FItemSize, #0);
 end;
 
 procedure TFPSList.DeleteRange(IndexFrom, IndexTo : Integer);