Prepared 4.9 release.
This commit is contained in:
		
							
								
								
									
										4
									
								
								LICENSE
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								LICENSE
									
									
									
									
									
								
							@@ -1,6 +1,6 @@
 | 
				
			|||||||
MIT/X Consortium License
 | 
					MIT/X Consortium License
 | 
				
			||||||
 | 
					
 | 
				
			||||||
© 2006-2014 Anselm R Garbe <anselm@garbe.us>
 | 
					© 2006-2019 Anselm R Garbe <anselm@garbe.ca>
 | 
				
			||||||
© 2006-2008 Sander van Dijk <a.h.vandijk@gmail.com>
 | 
					© 2006-2008 Sander van Dijk <a.h.vandijk@gmail.com>
 | 
				
			||||||
© 2006-2007 Michał Janeczek <janeczek@gmail.com>
 | 
					© 2006-2007 Michał Janeczek <janeczek@gmail.com>
 | 
				
			||||||
© 2007 Kris Maglione <jg@suckless.org>
 | 
					© 2007 Kris Maglione <jg@suckless.org>
 | 
				
			||||||
@@ -8,7 +8,7 @@ MIT/X Consortium License
 | 
				
			|||||||
© 2009 Markus Schnalke <meillo@marmaro.de>
 | 
					© 2009 Markus Schnalke <meillo@marmaro.de>
 | 
				
			||||||
© 2009 Evan Gates <evan.gates@gmail.com>
 | 
					© 2009 Evan Gates <evan.gates@gmail.com>
 | 
				
			||||||
© 2010-2012 Connor Lane Smith <cls@lubutu.com>
 | 
					© 2010-2012 Connor Lane Smith <cls@lubutu.com>
 | 
				
			||||||
© 2014-2018 Hiltjo Posthuma <hiltjo@codemadness.org>
 | 
					© 2014-2019 Hiltjo Posthuma <hiltjo@codemadness.org>
 | 
				
			||||||
© 2015-2018 Quentin Rameau <quinq@fifth.space>
 | 
					© 2015-2018 Quentin Rameau <quinq@fifth.space>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Permission is hereby granted, free of charge, to any person obtaining a
 | 
					Permission is hereby granted, free of charge, to any person obtaining a
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,5 +1,5 @@
 | 
				
			|||||||
# dmenu version
 | 
					# dmenu version
 | 
				
			||||||
VERSION = 4.8
 | 
					VERSION = 4.9
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# paths
 | 
					# paths
 | 
				
			||||||
PREFIX = /usr/local
 | 
					PREFIX = /usr/local
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										16
									
								
								drw.c
									
									
									
									
									
								
							
							
						
						
									
										16
									
								
								drw.c
									
									
									
									
									
								
							@@ -132,6 +132,19 @@ xfont_create(Drw *drw, const char *fontname, FcPattern *fontpattern)
 | 
				
			|||||||
		die("no font specified.");
 | 
							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 = ecalloc(1, sizeof(Fnt));
 | 
				
			||||||
	font->xfont = xfont;
 | 
						font->xfont = xfont;
 | 
				
			||||||
	font->pattern = pattern;
 | 
						font->pattern = pattern;
 | 
				
			||||||
@@ -200,7 +213,7 @@ drw_scm_create(Drw *drw, const char *clrnames[], size_t clrcount)
 | 
				
			|||||||
	Clr *ret;
 | 
						Clr *ret;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/* need at least two colors for a scheme */
 | 
						/* 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;
 | 
							return NULL;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for (i = 0; i < clrcount; i++)
 | 
						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);
 | 
								fcpattern = FcPatternDuplicate(drw->fonts->pattern);
 | 
				
			||||||
			FcPatternAddCharSet(fcpattern, FC_CHARSET, fccharset);
 | 
								FcPatternAddCharSet(fcpattern, FC_CHARSET, fccharset);
 | 
				
			||||||
			FcPatternAddBool(fcpattern, FC_SCALABLE, FcTrue);
 | 
								FcPatternAddBool(fcpattern, FC_SCALABLE, FcTrue);
 | 
				
			||||||
 | 
								FcPatternAddBool(fcpattern, FC_COLOR, FcFalse);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			FcConfigSubstitute(NULL, fcpattern, FcMatchPattern);
 | 
								FcConfigSubstitute(NULL, fcpattern, FcMatchPattern);
 | 
				
			||||||
			FcDefaultSubstitute(fcpattern);
 | 
								FcDefaultSubstitute(fcpattern);
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user