Exception class ERangeError with message Range check error?
Почему программа начала выдавать такую ошибку?
Код:
procedure CreateBuffer(Names: TStrings; var P: TBuffer);
var
i, j, l : integer;
begin
for i := 0 to Names.Count-1 do
begin
l:= Length(P);
SetLength(P, L+Length(Names[i])+1);
for J := 0 to Length(Names[i])-1 do
begin
if J > Length(Names[i])-1 then exit;
P[L + J]:= Names[i] [J + 1];
P[L + J]:= #0;
end;
end;
SetLength(P, Length(P)+1);
P[Length(P)]:= #0; // ошибка тут
end;