Browse Source

* fixed getting upper byte of "extra field" (patch by Brett, mantis #16887)

git-svn-id: trunk@15537 -
Jonas Maebe 15 years ago
parent
commit
36e4f3d38b
1 changed files with 2 additions and 2 deletions
  1. 2 2
      packages/paszlib/src/gzio.pas

+ 2 - 2
packages/paszlib/src/gzio.pas

@@ -451,7 +451,7 @@ begin
 
 
   if ((flags and EXTRA_FIELD) <> 0) then begin { skip the extra field }
   if ((flags and EXTRA_FIELD) <> 0) then begin { skip the extra field }
     len := cardinal(get_byte(s));
     len := cardinal(get_byte(s));
-    len := len + (cardinal(get_byte(s)) shr 8);
+    len := len + (cardinal(get_byte(s)) shl 8);
     { len is garbage if EOF but the loop below will quit anyway }
     { len is garbage if EOF but the loop below will quit anyway }
     while (len <> 0) and (get_byte(s) <> Z_EOF) do Dec(len);
     while (len <> 0) and (get_byte(s) <> Z_EOF) do Dec(len);
   end;
   end;
@@ -1220,4 +1220,4 @@ begin
   gzerror := s^.msg;
   gzerror := s^.msg;
 end;
 end;
 
 
-end.
+end.