mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-05-15 10:03:16 +02:00
gtk, gtk2: fix crash in SetSysColors
git-svn-id: trunk@34419 -
This commit is contained in:
parent
788c0a47d2
commit
ecdc478798
@ -9246,9 +9246,6 @@ end;
|
||||
------------------------------------------------------------------------------}
|
||||
function TGtkWidgetSet.SetSysColors(cElements: Integer; const lpaElements;
|
||||
const lpaRgbValues): Boolean;
|
||||
type
|
||||
TLongArray = array[0..0] of Longint;
|
||||
PLongArray = ^TLongArray;
|
||||
var
|
||||
n: Integer;
|
||||
Element: LongInt;
|
||||
@ -9258,11 +9255,10 @@ begin
|
||||
|
||||
for n := 0 to cElements - 1 do
|
||||
begin
|
||||
Element := PLongArray(lpaElements)^[n];
|
||||
if (Element > MAX_SYS_COLORS)
|
||||
or (Element < 0)
|
||||
then Exit;
|
||||
SysColorMap[PLongArray(lpaElements)^[n]] := PLongArray(lpaRgbValues)^[n];
|
||||
Element := PInteger(lpaElements)[n];
|
||||
if (Element > MAX_SYS_COLORS) or (Element < 0) then
|
||||
Exit;
|
||||
SysColorMap[Element] := PDword(@lpaRgbValues)[n];
|
||||
//DebugLn(Format('Trace:[TGtkWidgetSet.SetSysColor] Index %d (%8x) --> %8x', [PLongArray(lpaElements)^[n], SysColorMap[PLongArray(lpaElements)^[n]], PLongArray(lpaRgbValues)^[n]]));
|
||||
end;
|
||||
|
||||
|
@ -8625,9 +8625,6 @@ end;
|
||||
------------------------------------------------------------------------------}
|
||||
function TGtk2WidgetSet.SetSysColors(cElements: Integer; const lpaElements;
|
||||
const lpaRgbValues): Boolean;
|
||||
type
|
||||
TLongArray = array[0..0] of Longint;
|
||||
PLongArray = ^TLongArray;
|
||||
var
|
||||
n: Integer;
|
||||
Element: LongInt;
|
||||
@ -8637,11 +8634,10 @@ begin
|
||||
|
||||
for n := 0 to cElements - 1 do
|
||||
begin
|
||||
Element := PLongArray(lpaElements)^[n];
|
||||
if (Element > MAX_SYS_COLORS)
|
||||
or (Element < 0)
|
||||
then Exit;
|
||||
SysColorMap[PLongArray(lpaElements)^[n]] := PLongArray(lpaRgbValues)^[n];
|
||||
Element := PInteger(lpaElements)[n];
|
||||
if (Element > MAX_SYS_COLORS) or (Element < 0) then
|
||||
Exit;
|
||||
SysColorMap[Element] := PDword(@lpaRgbValues)[n];
|
||||
//DebugLn(Format('Trace:[TGtk2WidgetSet.SetSysColor] Index %d (%8x) --> %8x', [PLongArray(lpaElements)^[n], SysColorMap[PLongArray(lpaElements)^[n]], PLongArray(lpaRgbValues)^[n]]));
|
||||
end;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user