--- a/hedgewars/adler32.pas Tue Oct 24 21:59:06 2017 +0200
+++ b/hedgewars/adler32.pas Tue Oct 24 18:28:59 2017 -0400
@@ -65,7 +65,7 @@
Also, the structure was removed to simplify C conversion
*)
-function Adler32Update (var adler : longint; Msg :Pointer; Len :longint ) : longint;
+function Adler32Update (adler : longint; Msg :Pointer; Len :longint ) : longint;
implementation
@@ -123,7 +123,7 @@
end;
*)
-function Adler32Update(var adler:longint; Msg: Pointer; Len :longint) : longint;
+function Adler32Update(adler:longint; Msg: Pointer; Len :longint) : longint;
{-update Adler32 with Msg data}
const
BASE = 65521; {max. prime < 65536 }
--- a/hedgewars/uLand.pas Tue Oct 24 21:59:06 2017 +0200
+++ b/hedgewars/uLand.pas Tue Oct 24 18:28:59 2017 -0400
@@ -985,7 +985,7 @@
var i: LongInt;
begin
for i:= 0 to LAND_HEIGHT-1 do
- syncedPixelDigest:= Adler32Update(syncedPixelDigest, @Land[i,0], LAND_WIDTH);
+ syncedPixelDigest:= Adler32Update(syncedPixelDigest, @Land[i,0], LAND_WIDTH*2);
s:= 'M' + IntToStr(syncedPixelDigest); // + cScriptName; script name is no longer needed. scripts are hashed
ScriptSetString('LandDigest', s);
--- a/hedgewars/uLandObjects.pas Tue Oct 24 21:59:06 2017 +0200
+++ b/hedgewars/uLandObjects.pas Tue Oct 24 18:28:59 2017 -0400
@@ -262,7 +262,7 @@
girSurf:= LoadDataImageAltPath(ptCurrTheme, ptGraphics, 'Girder', ifCritical or ifColorKey or ifIgnoreCaps);
for y := 0 to girsurf^.h-1 do
- syncedPixelDigest:= Adler32Update(syncedPixelDigest, @PLongWordArray(girsurf^.pixels)^[y*girsurf^.w], girsurf^.w);
+ syncedPixelDigest:= Adler32Update(syncedPixelDigest, @PByteArray(girsurf^.pixels)^[y*girsurf^.pitch], girsurf^.w);
girderHeight:= girSurf^.h;
@@ -699,7 +699,7 @@
if (Maxcnt < 1) or (Maxcnt > MAXTHEMEOBJECTS) then
OutError('Object''s max count should be between 1 and '+ inttostr(MAXTHEMEOBJECTS) +' (it was '+ inttostr(Maxcnt) +').', true);
for y := 0 to Surf^.h-1 do
- syncedPixelDigest:= Adler32Update(syncedPixelDigest, @PLongWordArray(Surf^.pixels)^[y*Surf^.w], Surf^.w);
+ syncedPixelDigest:= Adler32Update(syncedPixelDigest, @PByteArray(Surf^.pixels)^[y*Surf^.pitch], Surf^.w);
inrectcnt := 0;
--- a/hedgewars/uStore.pas Tue Oct 24 21:59:06 2017 +0200
+++ b/hedgewars/uStore.pas Tue Oct 24 18:28:59 2017 -0400
@@ -473,7 +473,7 @@
{$ELSE}
if checkSum then
for y := 0 to tmpsurf^.h-1 do
- syncedPixelDigest:= Adler32Update(syncedPixelDigest, @PLongWordArray(tmpsurf^.pixels)^[y*tmpsurf^.w], tmpsurf^.w);
+ syncedPixelDigest:= Adler32Update(syncedPixelDigest, @PByteArray(tmpsurf^.pixels)^[y*tmpsurf^.pitch], tmpsurf^.w);
if saveSurf then
Surface:= tmpsurf