* when creating the reverse endian .bcm file, zero fill all the records, before

filling them in, so that the alignment space inside the records is filled with
  zeros, instead of random uninitialized bytes

git-svn-id: trunk@36438 -
This commit is contained in:
nickysn 2017-06-06 14:57:22 +00:00
parent e06f1f89ef
commit cad2b985d6

View File

@ -63,6 +63,7 @@ const
BlockWrite(nef,AMap^.reversemap^,h.reverseMapLength);
Close(nef);
FillChar(th,SizeOf(th),0);
th.cpName := h.cpName;
th.cp := SwapEndian(h.cp);
th.mapLength := SwapEndian(h.mapLength);
@ -72,6 +73,7 @@ const
Rewrite(oef);
BlockWrite(oef,th,SizeOf(th));
pum := AMap^.map;
FillChar(um,SizeOf(um),0);
for k := 0 to AMap^.lastchar do begin
um.flag := pum^.flag;
um.reserved := pum^.reserved;
@ -80,6 +82,7 @@ const
Inc(pum);
end;
prm := AMap^.reversemap;
FillChar(rm,SizeOf(rm),0);
for k := 0 to AMap^.reversemaplength - 1 do begin
rm.unicode := SwapEndian(prm^.unicode);
rm.char1 := prm^.char1;