[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#37895: 26.3; X protocol error: BadLength (poly request too large or
From: |
Robert Pluim |
Subject: |
bug#37895: 26.3; X protocol error: BadLength (poly request too large or internal Xlib length error) on protocol request 139 |
Date: |
Fri, 25 Oct 2019 18:37:01 +0200 |
>>>>> On Thu, 24 Oct 2019 20:06:35 +0200, Unknown <ax487@gmx.de> said:
>> So your file included some emoji, is that correct?
Unknown> Well, that stands to reason. I suspect the doom-modeline package
Unknown> https://github.com/seagle0128/doom-modeline
Unknown> which relies heavily on icons and unicode symbols. In particular,
there
Unknown> are icons for the file types and minor modes. I think that opening
a
Unknown> C/C++ file activates some major/minor mode associated with an
Unknown> icon/symbol triggering the error.
Bug 37786 looks very similar to this (and on Arch Linux as well). If
you can build the emacs-26 branch, could you see if the following
patch fixes your crash?
diff --git i/lisp/international/fontset.el w/lisp/international/fontset.el
index c90d4f53bd..e80a1a87b9 100644
--- i/lisp/international/fontset.el
+++ w/lisp/international/fontset.el
@@ -804,7 +804,6 @@ setup-default-fontset
#x2664
(#x2667 . #x2669)
(#x266C . #x26FF)
- (#x2700 . #x27bF) ;; Dingbats
(#x27C0 . #x27EF) ;; Misc Mathematical Symbols-A
(#x27F0 . #x27FF) ;; Supplemental Arrows-A
(#x2900 . #x297F) ;; Supplemental Arrows-B
diff --git i/src/ftfont.c w/src/ftfont.c
index 823fb2095c..017b349318 100644
--- i/src/ftfont.c
+++ w/src/ftfont.c
@@ -861,6 +861,9 @@ ftfont_list (struct frame *f, Lisp_Object spec)
#endif /* FC_CAPABILITY */
#ifdef FC_FONTFORMAT
FC_FONTFORMAT,
+#endif
+#ifdef FC_COLOR
+ FC_COLOR,
#endif
NULL);
if (! objset)
@@ -902,6 +905,15 @@ ftfont_list (struct frame *f, Lisp_Object spec)
{
Lisp_Object entity;
+ {
+ FcBool b;
+ if (FcPatternGetBool (fontset->fonts[i], FC_COLOR, 0, &b)
+ == FcResultMatch && b)
+ {
+ fprintf (stderr, "Skipping Color font\n");
+ continue;
+ }
+ }
if (spacing >= 0)
{
int this;