[gtk+/wip/baedert/gtkimageview] popover: Check for priv->window before using it
- From: Timm Bäder <baedert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+/wip/baedert/gtkimageview] popover: Check for priv->window before using it
- Date: Fri, 13 May 2016 16:29:29 +0000 (UTC)
commit ef7e4857a0daa79a19b8cbd3081c4bfdda3d4acf
Author: Timm Bäder <mail baedert org>
Date: Fri May 13 17:57:33 2016 +0200
popover: Check for priv->window before using it
The rest of the code is doing it because it could be NULL everywhere,
so also do it in ::map and ::unmap.
gtk/gtkpopover.c | 22 +++++++++++++++-------
1 files changed, 15 insertions(+), 7 deletions(-)
---
diff --git a/gtk/gtkpopover.c b/gtk/gtkpopover.c
index c5c002a..f9791fc 100644
--- a/gtk/gtkpopover.c
+++ b/gtk/gtkpopover.c
@@ -602,16 +602,20 @@ gtk_popover_map (GtkWidget *widget)
{
GtkPopoverPrivate *priv = GTK_POPOVER (widget)->priv;
- priv->prev_default = gtk_window_get_default_widget (priv->window);
- if (priv->prev_default)
- g_object_ref (priv->prev_default);
+ if (priv->window)
+ {
+ priv->prev_default = gtk_window_get_default_widget (priv->window);
+ if (priv->prev_default)
+ g_object_ref (priv->prev_default);
+ }
GTK_WIDGET_CLASS (gtk_popover_parent_class)->map (widget);
gdk_window_show (gtk_widget_get_window (widget));
gtk_popover_update_position (GTK_POPOVER (widget));
- gtk_window_set_default (priv->window, priv->default_widget);
+ if (priv->window)
+ gtk_window_set_default (priv->window, priv->default_widget);
}
static void
@@ -624,9 +628,13 @@ gtk_popover_unmap (GtkWidget *widget)
gdk_window_hide (gtk_widget_get_window (widget));
GTK_WIDGET_CLASS (gtk_popover_parent_class)->unmap (widget);
- if (gtk_window_get_default_widget (priv->window) == priv->default_widget)
- gtk_window_set_default (priv->window, priv->prev_default);
- g_clear_object (&priv->prev_default);
+ if (priv->window)
+ {
+ if (gtk_window_get_default_widget (priv->window) == priv->default_widget)
+ gtk_window_set_default (priv->window, priv->prev_default);
+
+ g_clear_object (&priv->prev_default);
+ }
}
static GtkPositionType
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]