summaryrefslogtreecommitdiff
path: root/gtk/gtkwidget.c
diff options
context:
space:
mode:
author10:33:41 Tim Janik <timj@imendio.com>2008-05-27 08:35:24 +0000
committerTim Janik <timj@src.gnome.org>2008-05-27 08:35:24 +0000
commit727a7dbf461b48b2c35c5a94bd61ce5996b92a92 (patch)
treeb1bb523e8bf1cd4d423a9529c25abec6f7a1a0d7 /gtk/gtkwidget.c
parent3f26314d0fd32a55b03c80356ed561e18558e536 (diff)
downloadgtk+-727a7dbf461b48b2c35c5a94bd61ce5996b92a92.tar.gz
guard gtk_widget_get_snapshot() against invalid or invisible widgets.
2008-05-27 10:33:41 Tim Janik <timj@imendio.com> * gtk/gtkwidget.c: guard gtk_widget_get_snapshot() against invalid or invisible widgets. svn path=/trunk/; revision=20187
Diffstat (limited to 'gtk/gtkwidget.c')
-rw-r--r--gtk/gtkwidget.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/gtk/gtkwidget.c b/gtk/gtkwidget.c
index 171be8525c..7496c00c88 100644
--- a/gtk/gtkwidget.c
+++ b/gtk/gtkwidget.c
@@ -8356,6 +8356,10 @@ gtk_widget_get_snapshot (GtkWidget *widget,
GdkPixmap *pixmap;
GList *windows = NULL, *list;
+ g_return_val_if_fail (GTK_IS_WIDGET (widget), NULL);
+ if (!GTK_WIDGET_VISIBLE (widget))
+ return NULL;
+
/* the widget (and parent_window) must be realized to be drawable */
if (widget->parent && !GTK_WIDGET_REALIZED (widget->parent))
gtk_widget_realize (widget->parent);