Warning: Attempt to read property "date" on null in /usr/local/www/websvn.planix.org/blame.php on line 247

Warning: Attempt to read property "msg" on null in /usr/local/www/websvn.planix.org/blame.php on line 247
WebSVN – planix.SVN – Blame – /os/branches/planix-v0/sys/src/libdraw/subfontcache.c – Rev 2

Subversion Repositories planix.SVN

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

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