Fix compilation with -DGLYPH_DEBUG=1 on MS-Windows.
authorEli Zaretskii <eliz@gnu.org>
Fri, 18 May 2012 08:36:50 +0000 (11:36 +0300)
committerEli Zaretskii <eliz@gnu.org>
Fri, 18 May 2012 08:36:50 +0000 (11:36 +0300)
 src/w32term.c [GLYPH_DEBUG]: Add prototype for x_check_font.
 (x_check_font) [GLYPH_DEBUG]: New function, copied from xterm.c
 src/w32fns.c (unwind_create_frame) [GLYPH_DEBUG]: Fix broken
 reference to image_cache->refcount.
 (x_create_tip_frame): Fix broken use of FRAME_IMAGE_CACHE.

src/ChangeLog
src/w32fns.c
src/w32term.c

index c72c8ae..b3614db 100644 (file)
@@ -1,3 +1,14 @@
+2012-05-18  Eli Zaretskii  <eliz@gnu.org>
+
+       Fix compilation with -DGLYPH_DEBUG=1 on MS-Windows.
+
+       * w32term.c [GLYPH_DEBUG]: Add prototype for x_check_font.
+       (x_check_font) [GLYPH_DEBUG]: New function, copied from xterm.c
+
+       * w32fns.c (unwind_create_frame) [GLYPH_DEBUG]: Fix broken
+       reference to image_cache->refcount.
+       (x_create_tip_frame): Fix broken use of FRAME_IMAGE_CACHE.
+
 2012-05-17  Juri Linkov  <juri@jurta.org>
 
        * search.c (Fword_search_regexp, Fword_search_backward)
index a3ccb4e..f516111 100644 (file)
@@ -4003,7 +4003,7 @@ unwind_create_frame (Lisp_Object frame)
 #if GLYPH_DEBUG
       /* Check that reference counts are indeed correct.  */
       xassert (dpyinfo->reference_count == dpyinfo_refcount);
-      xassert (dpyinfo->image_cache->refcount == image_cache_refcount);
+      xassert (dpyinfo->terminal->image_cache->refcount == image_cache_refcount);
 #endif
       return Qt;
     }
@@ -5236,7 +5236,7 @@ x_create_tip_frame (struct w32_display_info *dpyinfo,
 
 #if GLYPH_DEBUG
   image_cache_refcount =
-    FRAME_IMAGE_CACHE ? FRAME_IMAGE_CACHE (f)->refcount : 0;
+    FRAME_IMAGE_CACHE (f) ? FRAME_IMAGE_CACHE (f)->refcount : 0;
   dpyinfo_refcount = dpyinfo->reference_count;
 #endif /* GLYPH_DEBUG */
   FRAME_KBOARD (f) = kb;
index 18a3753..2ccd757 100644 (file)
@@ -231,6 +231,10 @@ static void my_set_focus (struct frame *, HWND);
 static void my_set_foreground_window (HWND);
 static void my_destroy_window (struct frame *, HWND);
 
+#if GLYPH_DEBUG
+static void x_check_font (struct frame *, struct font *);
+#endif
+
 static Lisp_Object Qvendor_specific_keysyms;
 
 \f
@@ -5905,6 +5909,27 @@ x_wm_set_icon_position (struct frame *f, int icon_x, int icon_y)
 }
 
 \f
+/***********************************************************************
+                               Fonts
+ ***********************************************************************/
+
+#if GLYPH_DEBUG
+
+/* Check that FONT is valid on frame F.  It is if it can be found in F's
+   font table.  */
+
+static void
+x_check_font (struct frame *f, struct font *font)
+{
+  xassert (font != NULL && ! NILP (font->props[FONT_TYPE_INDEX]));
+  if (font->driver->check)
+    xassert (font->driver->check (f, font) == 0);
+}
+
+#endif /* GLYPH_DEBUG != 0 */
+
+
+\f
 /***********************************************************************
                            Initialization
  ***********************************************************************/