remove workaround for a crash with color emojis on some systems, now fixed in libXft...
authorHiltjo Posthuma <hiltjo@codemadness.org>
Fri, 16 Sep 2022 21:05:07 +0000 (23:05 +0200)
committerHiltjo Posthuma <hiltjo@codemadness.org>
Sat, 17 Sep 2022 13:32:26 +0000 (15:32 +0200)
https://gitlab.freedesktop.org/xorg/lib/libxft/-/blob/libXft-2.3.5/NEWS

drw.c

diff --git a/drw.c b/drw.c
index ced7d3747c7be13c7a61d6364704e5502cfdd3b4..a58a2b4896500cd7c3b61fbdc626cd42cd9df40e 100644 (file)
--- a/drw.c
+++ b/drw.c
@@ -133,19 +133,6 @@ xfont_create(Drw *drw, const char *fontname, FcPattern *fontpattern)
                die("no font specified.");
        }
 
-       /* Do not allow using color fonts. This is a workaround for a BadLength
-        * error from Xft with color glyphs. Modelled on the Xterm workaround. See
-        * https://bugzilla.redhat.com/show_bug.cgi?id=1498269
-        * https://lists.suckless.org/dev/1701/30932.html
-        * https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=916349
-        * and lots more all over the internet.
-        */
-       FcBool iscol;
-       if(FcPatternGetBool(xfont->pattern, FC_COLOR, 0, &iscol) == FcResultMatch && iscol) {
-               XftFontClose(drw->dpy, xfont);
-               return NULL;
-       }
-
        font = ecalloc(1, sizeof(Fnt));
        font->xfont = xfont;
        font->pattern = pattern;
@@ -368,7 +355,6 @@ drw_text(Drw *drw, int x, int y, unsigned int w, unsigned int h, unsigned int lp
                        fcpattern = FcPatternDuplicate(drw->fonts->pattern);
                        FcPatternAddCharSet(fcpattern, FC_CHARSET, fccharset);
                        FcPatternAddBool(fcpattern, FC_SCALABLE, FcTrue);
-                       FcPatternAddBool(fcpattern, FC_COLOR, FcFalse);
 
                        FcConfigSubstitute(NULL, fcpattern, FcMatchPattern);
                        FcDefaultSubstitute(fcpattern);