Mercurial > emacs
comparison src/xfaces.c @ 44705:413dd322c77d
(clear_font_table): Don't free the default font of
a frame even if it's on another display.
(Finternal_set_lisp_face_attribute): Don't use XFRAME on something
that could be Qt.
author | Stefan Monnier <monnier@iro.umontreal.ca> |
---|---|
date | Fri, 19 Apr 2002 18:36:58 +0000 |
parents | 935816913346 |
children | 01b93e5e53a7 |
comparison
equal
deleted
inserted
replaced
44704:9facddb16376 | 44705:413dd322c77d |
---|---|
1052 | 1052 |
1053 /* Check if slot is already free. */ | 1053 /* Check if slot is already free. */ |
1054 if (font_info->name == NULL) | 1054 if (font_info->name == NULL) |
1055 continue; | 1055 continue; |
1056 | 1056 |
1057 /* Don't free a default font of some frame on this display. */ | 1057 /* Don't free a default font of some frame. */ |
1058 FOR_EACH_FRAME (tail, frame) | 1058 FOR_EACH_FRAME (tail, frame) |
1059 { | 1059 { |
1060 struct frame *f = XFRAME (frame); | 1060 struct frame *f = XFRAME (frame); |
1061 if (FRAME_WINDOW_P (f) | 1061 if (FRAME_WINDOW_P (f) |
1062 && FRAME_X_DISPLAY_INFO (f) == dpyinfo | |
1063 && font_info->font == FRAME_FONT (f)) | 1062 && font_info->font == FRAME_FONT (f)) |
1064 break; | 1063 break; |
1065 } | 1064 } |
1066 | 1065 |
1067 if (!NILP (tail)) | 1066 if (!NILP (tail)) |
4050 font_related_attr_p = 1; | 4049 font_related_attr_p = 1; |
4051 } | 4050 } |
4052 else if (EQ (attr, QCfont)) | 4051 else if (EQ (attr, QCfont)) |
4053 { | 4052 { |
4054 #ifdef HAVE_WINDOW_SYSTEM | 4053 #ifdef HAVE_WINDOW_SYSTEM |
4055 if (FRAME_WINDOW_P (XFRAME (frame))) | 4054 if (EQ (frame, Qt) || FRAME_WINDOW_P (XFRAME (frame))) |
4056 { | 4055 { |
4057 /* Set font-related attributes of the Lisp face from an XLFD | 4056 /* Set font-related attributes of the Lisp face from an XLFD |
4058 font name. */ | 4057 font name. */ |
4059 struct frame *f; | 4058 struct frame *f; |
4060 Lisp_Object tmp; | 4059 Lisp_Object tmp; |