diff --git a/src/engine/e_msg.pas b/src/engine/e_msg.pas
index bb7347740bd950401a0bfc4d49626b41c6884069..f5711ec3079d6b46f7aa38d9a2b5b28b2ebe164c 100644 (file)
--- a/src/engine/e_msg.pas
+++ b/src/engine/e_msg.pas
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
+ * the Free Software Foundation, version 3 of the License ONLY.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
begin
if OwnMemory then
begin
- NewSize := MaxSize + ((N + AllocStep) div AllocStep) * AllocStep; // round up
+ NewSize := MaxSize + ((N + AllocStep - 1) div AllocStep) * AllocStep; // round up
if ReAllocMem(Data, NewSize) = nil then
raise Exception.Create('TMsg.WriteData: out of memory on realloc');
MaxSize := NewSize;
procedure TMsg.Write(V: Word); overload;
begin
+ V := NtoLE(V);
WriteData(@V, 2);
end;
procedure TMsg.Write(V: LongWord); overload;
begin
+ V := NtoLE(V);
WriteData(@V, 4);
end;
procedure TMsg.Write(V: ShortInt); overload;
begin
+ V := NtoLE(V);
WriteData(@V, 1);
end;
procedure TMsg.Write(V: SmallInt); overload;
begin
+ V := NtoLE(V);
WriteData(@V, 2);
end;
procedure TMsg.Write(V: LongInt); overload;
begin
+ V := NtoLE(V);
WriteData(@V, 4);
end;
procedure TMsg.Write(V: Int64); overload;
begin
+ V := NtoLE(V);
WriteData(@V, 8);
end;
begin
Result := 0;
ReadData(@Result, 2);
+ Result := LEtoN(Result);
end;
function TMsg.ReadLongWord(): LongWord;
begin
Result := 0;
ReadData(@Result, 4);
+ Result := LEtoN(Result);
end;
function TMsg.ReadShortInt(): ShortInt;
begin
Result := 0;
ReadData(@Result, 1);
+ Result := LEtoN(Result);
end;
function TMsg.ReadSmallInt(): SmallInt;
begin
Result := 0;
ReadData(@Result, 2);
+ Result := LEtoN(Result);
end;
function TMsg.ReadLongInt(): LongInt;
begin
Result := 0;
ReadData(@Result, 4);
+ Result := LEtoN(Result);
end;
function TMsg.ReadInt64(): Int64;
begin
Result := 0;
ReadData(@Result, 8);
+ Result := LEtoN(Result);
end;
function TMsg.ReadString(): string;