emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] trunk r114755: Tweak last font-related changes to fix bug#


From: Dmitry Antipov
Subject: [Emacs-diffs] trunk r114755: Tweak last font-related changes to fix bug#15686.
Date: Wed, 23 Oct 2013 16:07:45 +0000
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 114755
revision-id: address@hidden
parent: address@hidden
committer: Dmitry Antipov <address@hidden>
branch nick: trunk
timestamp: Wed 2013-10-23 20:07:30 +0400
message:
  Tweak last font-related changes to fix bug#15686.
  * alloc.c (mark_object) [HAVE_WINDOW_SYSTEM]: If marked frame
  is a live window system frame, mark it's default font too.
modified:
  src/ChangeLog                  changelog-20091113204419-o5vbwnq5f7feedwu-1438
  src/alloc.c                    alloc.c-20091113204419-o5vbwnq5f7feedwu-252
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2013-10-23 06:22:54 +0000
+++ b/src/ChangeLog     2013-10-23 16:07:30 +0000
@@ -1,3 +1,9 @@
+2013-10-23  Dmitry Antipov  <address@hidden>
+
+       Tweak last font-related changes to fix bug#15686.
+       * alloc.c (mark_object) [HAVE_WINDOW_SYSTEM]: If marked frame
+       is a live window system frame, mark it's default font too.
+
 2013-10-23  Glenn Morris  <address@hidden>
 
        * Makefile.in (RUN_TEMACS): Make relative (again).

=== modified file 'src/alloc.c'
--- a/src/alloc.c       2013-10-21 14:11:25 +0000
+++ b/src/alloc.c       2013-10-23 16:07:30 +0000
@@ -5951,8 +5951,21 @@
            break;
 
          case PVEC_FRAME:
-           mark_vectorlike (ptr);
-           mark_face_cache (((struct frame *) ptr)->face_cache);
+           {
+             struct frame *f = (struct frame *) ptr;
+
+             mark_vectorlike (ptr);
+             mark_face_cache (f->face_cache);
+#ifdef HAVE_WINDOW_SYSTEM
+             if (FRAME_WINDOW_P (f) && FRAME_X_OUTPUT (f))
+               {
+                 struct font *font = FRAME_FONT (f);
+
+                 if (font && !VECTOR_MARKED_P (font))
+                   mark_vectorlike ((struct Lisp_Vector *) font);
+               }
+#endif
+           }
            break;
 
          case PVEC_WINDOW:


reply via email to

[Prev in Thread] Current Thread [Next in Thread]