(Fx_create_frame): Move unwind_create_frame setup down.
authorRichard M. Stallman <rms@gnu.org>
Mon, 3 Jul 2006 15:42:48 +0000 (15:42 +0000)
committerRichard M. Stallman <rms@gnu.org>
Mon, 3 Jul 2006 15:42:48 +0000 (15:42 +0000)
src/xfns.c

index 55575d9..dd0510c 100644 (file)
@@ -3075,7 +3075,6 @@ This function is an internal primitive--use `make-frame' instead.  */)
   f->output_data.x->scroll_bar_top_shadow_pixel = -1;
   f->output_data.x->scroll_bar_bottom_shadow_pixel = -1;
 #endif /* USE_TOOLKIT_SCROLL_BARS */
-  record_unwind_protect (unwind_create_frame, frame);
 
   f->icon_name
     = x_get_arg (dpyinfo, parms, Qicon_name, "iconName", "Title",
@@ -3084,6 +3083,9 @@ This function is an internal primitive--use `make-frame' instead.  */)
     f->icon_name = Qnil;
 
   FRAME_X_DISPLAY_INFO (f) = dpyinfo;
+
+  /* With FRAME_X_DISPLAY_INFO set up, this unwind-protect is safe.  */
+  record_unwind_protect (unwind_create_frame, frame);
 #if GLYPH_DEBUG
   image_cache_refcount = FRAME_X_IMAGE_CACHE (f)->refcount;
   dpyinfo_refcount = dpyinfo->reference_count;