diff options
author | Dave Woodfall | 2019-04-15 18:55:24 +0200 |
---|---|---|
committer | Willy Sudiarto Raharjo | 2019-04-20 03:20:55 +0200 |
commit | 718e23b5c6f511431a8a72a31eb7f27af71b0833 (patch) | |
tree | 5c76d4009719352f0075320f86bac1188dc7cf92 /desktop/dwm/sbo-patches/0001-Prepare-6.2-release.patch | |
parent | f53d530a7a105a43801b83f4eb2866a5ee486950 (diff) | |
download | slackbuilds-718e23b5c6f511431a8a72a31eb7f27af71b0833.tar.gz |
desktop/dwm: Add new options to slackbuild. Fix 6.2 update patch.
Diffstat (limited to 'desktop/dwm/sbo-patches/0001-Prepare-6.2-release.patch')
-rw-r--r-- | desktop/dwm/sbo-patches/0001-Prepare-6.2-release.patch | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/desktop/dwm/sbo-patches/0001-Prepare-6.2-release.patch b/desktop/dwm/sbo-patches/0001-Prepare-6.2-release.patch new file mode 100644 index 0000000000..22da3facea --- /dev/null +++ b/desktop/dwm/sbo-patches/0001-Prepare-6.2-release.patch @@ -0,0 +1,45 @@ +diff --git a/drw.c b/drw.c +index c638323..8fd1ca4 100644 +--- a/drw.c ++++ b/drw.c +@@ -132,6 +132,19 @@ 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; +@@ -200,7 +213,7 @@ drw_scm_create(Drw *drw, const char *clrnames[], size_t clrcount) + Clr *ret; + + /* need at least two colors for a scheme */ +- if (!drw || !clrnames || clrcount < 2 || !(ret = ecalloc(clrcount, sizeof(Clr)))) ++ if (!drw || !clrnames || clrcount < 2 || !(ret = ecalloc(clrcount, sizeof(XftColor)))) + return NULL; + + for (i = 0; i < clrcount; i++) +@@ -337,6 +350,7 @@ 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); + +--------------false-- + + |