mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-04-07 21:38:00 +02:00
lcl: make TCustomIcon.LoadFromResourceHandle endian safe
git-svn-id: trunk@23315 -
This commit is contained in:
parent
b52661b103
commit
4f2c331030
@ -701,19 +701,19 @@ begin
|
||||
// write icon header
|
||||
Stream.Write(Dir^, SizeOf(TIconHeader));
|
||||
// write icon entries headers
|
||||
offset := Stream.Position + SizeOf(IconEntry) * Dir^.idCount;
|
||||
for i := 0 to Dir^.idCount - 1 do
|
||||
offset := Stream.Position + SizeOf(IconEntry) * LEtoN(Dir^.idCount);
|
||||
for i := 0 to LEtoN(Dir^.idCount) - 1 do
|
||||
begin
|
||||
DirEntry := Dir^.idEntries[i];
|
||||
Move(DirEntry, IconEntry, SizeOf(DirEntry));
|
||||
IconEntry.dwImageOffset := offset;
|
||||
inc(offset, IconEntry.dwBytesInRes);
|
||||
IconEntry.dwImageOffset := NtoLE(offset);
|
||||
inc(offset, LEtoN(IconEntry.dwBytesInRes));
|
||||
Stream.Write(IconEntry, SizeOf(IconEntry));
|
||||
end;
|
||||
// write icons data
|
||||
for i := 0 to Dir^.idCount - 1 do
|
||||
for i := 0 to LEtoN(Dir^.idCount) - 1 do
|
||||
begin
|
||||
IconStream := TResourceStream.CreateFromID(Instance, Dir^.idEntries[i].nID, RT_ICON);
|
||||
IconStream := TResourceStream.CreateFromID(Instance, LEtoN(Dir^.idEntries[i].nID), RT_ICON);
|
||||
try
|
||||
Stream.CopyFrom(IconStream, IconStream.Size);
|
||||
finally
|
||||
|
Loading…
Reference in New Issue
Block a user