diff -up gnome-utils-2.28.1/gnome-screenshot/screenshot-utils.c.segfault gnome-utils-2.28.1/gnome-screenshot/screenshot-utils.c
--- gnome-utils-2.28.1/gnome-screenshot/screenshot-utils.c.segfault	2009-11-24 18:27:30.147717368 -0500
+++ gnome-utils-2.28.1/gnome-screenshot/screenshot-utils.c	2009-11-24 18:27:33.428463721 -0500
@@ -231,7 +231,7 @@ screenshot_find_current_window ()
   GdkWindow *current_window;
 
   current_window = screenshot_find_active_window ();
-  
+
   /* If there's no active window, we fall back to returning the
    * window that the cursor is in.
    */
@@ -241,13 +241,16 @@ screenshot_find_current_window ()
   if (current_window)
     {
       if (screenshot_window_is_desktop (current_window))
-	/* if the current window is the desktop (e.g. nautilus), we
+        /* if the current window is the desktop (e.g. nautilus), we
 	 * return NULL, as getting the whole screen makes more sense.
          */
         return NULL;
 
       /* Once we have a window, we take the toplevel ancestor. */
       current_window = gdk_window_get_toplevel (current_window);
+
+      if (!gdk_window_ensure_native (current_window))
+        return NULL;
     }
 
   return current_window;
