clutter-event-win32.c: Avoid a Crash

Commit e70a0109 simplified the dispatching of events by passing the event's
owernership to ClutterStage, but it may be so that any.stage is NULL at
some point on Windows, which will either cause _clutter_stage_queue_event()
to crash or issue a critical warning.  Avoid this problem by checking
whether event->any.stage is not NULL before trying to call
_clutter_stage_queue_event().

https://bugzilla.gnome.org/show_bug.cgi?id=726765
This commit is contained in:
Chun-wei Fan 2014-03-20 14:32:26 +08:00
parent 891d3fce00
commit 4c204a4f3e
1 changed files with 2 additions and 1 deletions

View File

@ -294,7 +294,8 @@ clutter_event_dispatch (GSource *source,
if ((event = clutter_event_get ()))
{
/* forward the event into clutter for emission etc. */
_clutter_stage_queue_event (event->any.stage, event, FALSE);
if (event->any.stage)
_clutter_stage_queue_event (event->any.stage, event, FALSE);
}
_clutter_threads_release_lock ();