Browse Source

* avoid range check errors for empty ansistrings written/read from ppus

git-svn-id: trunk@18253 -
florian 14 years ago
parent
commit
275c6092e5
1 changed files with 9 additions and 3 deletions
  1. 9 3
      compiler/ppu.pas

+ 9 - 3
compiler/ppu.pas

@@ -947,8 +947,13 @@ begin
      error:=true;
      error:=true;
      exit;
      exit;
    end;
    end;
-  SetLength(Result,l);
-  ReadData(result[1],l);
+  if l>0 then
+    begin
+      SetLength(Result,l);
+      ReadData(result[1],l);
+    end
+  else
+    Result:='';
   inc(entryidx,l);
   inc(entryidx,l);
 end;
 end;
 
 
@@ -1311,7 +1316,8 @@ procedure tppufile.putansistring(const s: ansistring);
   begin
   begin
     l:=length(s);
     l:=length(s);
     putdata(l,4);
     putdata(l,4);
-    putdata(s[1],l);
+    if l>0 then
+      putdata(s[1],l);
   end;
   end;