Lazy font unloading too.
This commit is contained in:
		
							
								
								
									
										25
									
								
								st.c
									
									
									
									
									
								
							
							
						
						
									
										25
									
								
								st.c
									
									
									
									
									
								
							| @@ -369,6 +369,7 @@ static void xresettitle(void); | |||||||
| static void xseturgency(int); | static void xseturgency(int); | ||||||
| static void xsetsel(char*); | static void xsetsel(char*); | ||||||
| static void xtermclear(int, int, int, int); | static void xtermclear(int, int, int, int); | ||||||
|  | static void xunloadfont(Font *f); | ||||||
| static void xunloadfonts(void); | static void xunloadfonts(void); | ||||||
| static void xresize(int, int); | static void xresize(int, int); | ||||||
|  |  | ||||||
| @@ -2733,6 +2734,14 @@ xloadfontset(Font *f) { | |||||||
| 	return 0; | 	return 0; | ||||||
| } | } | ||||||
|  |  | ||||||
|  | void | ||||||
|  | xunloadfont(Font *f) { | ||||||
|  | 	XftFontClose(xw.dpy, f->match); | ||||||
|  | 	FcPatternDestroy(f->pattern); | ||||||
|  | 	if(f->set) | ||||||
|  | 		FcFontSetDestroy(f->set); | ||||||
|  | } | ||||||
|  |  | ||||||
| void | void | ||||||
| xunloadfonts(void) { | xunloadfonts(void) { | ||||||
| 	int i, ip; | 	int i, ip; | ||||||
| @@ -2749,18 +2758,10 @@ xunloadfonts(void) { | |||||||
| 	frccur = -1; | 	frccur = -1; | ||||||
| 	frclen = 0; | 	frclen = 0; | ||||||
|  |  | ||||||
| 	XftFontClose(xw.dpy, dc.font.match); | 	xunloadfont(&dc.font); | ||||||
| 	FcPatternDestroy(dc.font.pattern); | 	xunloadfont(&dc.bfont); | ||||||
| 	FcFontSetDestroy(dc.font.set); | 	xunloadfont(&dc.ifont); | ||||||
| 	XftFontClose(xw.dpy, dc.bfont.match); | 	xunloadfont(&dc.ibfont); | ||||||
| 	FcPatternDestroy(dc.bfont.pattern); |  | ||||||
| 	FcFontSetDestroy(dc.bfont.set); |  | ||||||
| 	XftFontClose(xw.dpy, dc.ifont.match); |  | ||||||
| 	FcPatternDestroy(dc.ifont.pattern); |  | ||||||
| 	FcFontSetDestroy(dc.ifont.set); |  | ||||||
| 	XftFontClose(xw.dpy, dc.ibfont.match); |  | ||||||
| 	FcPatternDestroy(dc.ibfont.pattern); |  | ||||||
| 	FcFontSetDestroy(dc.ibfont.set); |  | ||||||
| } | } | ||||||
|  |  | ||||||
| void | void | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Christoph Lohmann
					Christoph Lohmann