Blob


1 #include <u.h>
2 #include <libc.h>
3 #include <draw.h>
5 /*
6 * Easy versions of the cache routines; may be substituted by fancier ones for other purposes
7 */
9 static char *lastname;
10 Subfont *lastsubfont;
12 Subfont*
13 lookupsubfont(Display *d, char *name)
14 {
15 if(lastname && strcmp(name, lastname)==0)
16 if(d==lastsubfont->bits->display){
17 lastsubfont->ref++;
18 return lastsubfont;
19 }
20 return 0;
21 }
23 void
24 installsubfont(char *name, Subfont *subfont)
25 {
26 free(lastname);
27 lastname = strdup(name);
28 lastsubfont = subfont; /* notice we don't free the old one; that's your business */
29 }
31 void
32 uninstallsubfont(Subfont *subfont)
33 {
34 if(subfont == lastsubfont){
35 free(lastname);
36 lastname = 0;
37 lastsubfont = 0;
38 }
39 }