mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-10-03 00:59:23 +02:00
ignore Set/RemoveEventHandler calls with nil parameter
git-svn-id: trunk@8465 -
This commit is contained in:
parent
437421c944
commit
8e93ee346b
@ -65,6 +65,7 @@ procedure TGtkWidgetSet.RemoveEventHandler(AHandler: PEventHandler);
|
||||
var
|
||||
lEventHandler: PWaitHandleEventHandler absolute AHandler;
|
||||
begin
|
||||
if AHandler = nil then exit;
|
||||
g_source_remove(lEventHandler^.GSourceID);
|
||||
if lEventHandler^.PrevHandler = nil then
|
||||
FWaitHandles := lEventHandler^.NextHandler
|
||||
@ -79,6 +80,7 @@ procedure TGtkWidgetSet.SetEventHandlerFlags(AHandler: PEventHandler; NewFlags:
|
||||
var
|
||||
lEventHandler: PWaitHandleEventHandler absolute AHandler;
|
||||
begin
|
||||
if AHandler = nil then exit;
|
||||
g_source_remove(lEventHandler^.GSourceID);
|
||||
lEventHandler^.GSourceID := g_io_add_watch(lEventHandler^.GIOChannel,
|
||||
NewFlags, @waithandle_iocallback, lEventHandler);
|
||||
@ -126,6 +128,7 @@ procedure TGtkWidgetSet.RemovePipeEventHandler(AHandler: PPipeEventHandler);
|
||||
var
|
||||
lPipeEventInfo: PPipeEventInfo absolute AHandler;
|
||||
begin
|
||||
if AHandler = nil then exit;
|
||||
RemoveEventHandler(lPipeEventInfo^.Handler);
|
||||
Dispose(lPipeEventInfo);
|
||||
end;
|
||||
@ -152,6 +155,7 @@ procedure TGtkWidgetSet.RemoveProcessEventHandler(AHandler: PProcessEventHandler
|
||||
var
|
||||
lHandler: PChildSignalEventHandler absolute AHandler;
|
||||
begin
|
||||
if AHandler = nil then exit;
|
||||
if lHandler^.PrevHandler = nil then
|
||||
FChildSignalHandlers := lHandler^.NextHandler
|
||||
else
|
||||
|
@ -60,6 +60,7 @@ var
|
||||
lListIndex: pdword absolute AHandler;
|
||||
I: dword;
|
||||
begin
|
||||
if AHandler = nil then exit;
|
||||
{$ifdef DEBUG_ASYNCEVENTS}
|
||||
DebugLn('Removing handle: ', IntToHex(FWaitHandles[lListIndex^], 8));
|
||||
if Length(FWaitHandles) > 0 then
|
||||
@ -99,6 +100,7 @@ procedure TWin32WidgetSet.RemovePipeEventHandler(AHandler: PPipeEventHandler);
|
||||
var
|
||||
lHandler: PPipeEventInfo absolute AHandler;
|
||||
begin
|
||||
if AHandler = nil then exit;
|
||||
if lHandler^.Prev <> nil then
|
||||
lHandler^.Prev^.Next := lHandler^.Next
|
||||
else
|
||||
@ -137,6 +139,7 @@ procedure TWin32WidgetSet.RemoveProcessEventHandler(AHandler: PProcessEventHandl
|
||||
var
|
||||
lProcessEvent: PProcessEvent absolute AHandler;
|
||||
begin
|
||||
if AHandler = nil then exit;
|
||||
RemoveEventHandler(lProcessEvent^.Handler);
|
||||
Dispose(lProcessEvent);
|
||||
end;
|
||||
|
@ -189,7 +189,6 @@ var
|
||||
newWidth, newHeight: integer; // dimensions of new combined bitmap
|
||||
srcWidth: integer; // width of glyph to use, bitmap may have multiple glyphs
|
||||
BitmapRect: Windows.RECT;
|
||||
oldImageList: HIMAGELIST;
|
||||
ButtonImageList: BUTTON_IMAGELIST;
|
||||
I: integer;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user