summaryrefslogtreecommitdiff
path: root/gdk/gdkdraw.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdk/gdkdraw.c')
-rw-r--r--gdk/gdkdraw.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/gdk/gdkdraw.c b/gdk/gdkdraw.c
index facc185e9c..fcab539e58 100644
--- a/gdk/gdkdraw.c
+++ b/gdk/gdkdraw.c
@@ -486,9 +486,12 @@ gdk_drawable_get_image (GdkDrawable *drawable,
g_return_val_if_fail (GDK_IS_DRAWABLE (drawable), NULL);
g_return_val_if_fail (x >= 0, NULL);
g_return_val_if_fail (y >= 0, NULL);
- g_return_val_if_fail (width >= 0, NULL);
- g_return_val_if_fail (height >= 0, NULL);
+ if (width < 0 || height < 0)
+ gdk_drawable_get_size (drawable,
+ width < 0 ? &width : NULL,
+ height < 0 ? &height : NULL);
+
composite =
GDK_DRAWABLE_GET_CLASS (drawable)->get_composite_drawable (drawable,
x, y,