diff --git a/gtk/gtkrange.c b/gtk/gtkrange.c index e384aaa741..c7a2b52665 100644 --- a/gtk/gtkrange.c +++ b/gtk/gtkrange.c @@ -2365,9 +2365,10 @@ range_grab_remove (GtkRange *range) if (priv->grab_device) { - gtk_device_grab_remove (GTK_WIDGET (range), - priv->grab_device); + GdkDevice *grab_device = priv->grab_device; + priv->grab_device = NULL; + gtk_device_grab_remove (GTK_WIDGET (range), grab_device); } location = priv->grab_location;