From 66640446796f148f4b92bb3194a8938aa456cd53 Mon Sep 17 00:00:00 2001 From: Carlos Garnacho Date: Thu, 24 Sep 2020 17:21:18 +0200 Subject: [PATCH] clutter: Do not use stack-allocated ClutterEvents Use ClutterEvent* and clutter_event_new() to always allocate events. https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1460 --- clutter/clutter/clutter-stage.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/clutter/clutter/clutter-stage.c b/clutter/clutter/clutter-stage.c index f5d7f141b..10ce401de 100644 --- a/clutter/clutter/clutter-stage.c +++ b/clutter/clutter/clutter-stage.c @@ -3471,7 +3471,7 @@ _clutter_stage_update_state (ClutterStage *stage, ClutterStageState set_flags) { ClutterStageState new_state; - ClutterEvent event; + ClutterEvent *event; new_state = stage->priv->current_state; new_state |= set_flags; @@ -3480,16 +3480,16 @@ _clutter_stage_update_state (ClutterStage *stage, if (new_state == stage->priv->current_state) return FALSE; - memset (&event, 0, sizeof (event)); - event.type = CLUTTER_STAGE_STATE; - clutter_event_set_stage (&event, stage); + event = clutter_event_new (CLUTTER_STAGE_STATE); + clutter_event_set_stage (event, stage); - event.stage_state.new_state = new_state; - event.stage_state.changed_mask = new_state ^ stage->priv->current_state; + event->stage_state.new_state = new_state; + event->stage_state.changed_mask = new_state ^ stage->priv->current_state; stage->priv->current_state = new_state; - clutter_stage_event (stage, &event); + clutter_stage_event (stage, event); + clutter_event_free (event); return TRUE; }