Blame


1 324891a5 2006-06-25 devnull #include <u.h>
2 324891a5 2006-06-25 devnull #include <libc.h>
3 324891a5 2006-06-25 devnull #include <draw.h>
4 324891a5 2006-06-25 devnull #include <memdraw.h>
5 324891a5 2006-06-25 devnull
6 324891a5 2006-06-25 devnull Memsubfont*
7 324891a5 2006-06-25 devnull allocmemsubfont(char *name, int n, int height, int ascent, Fontchar *info, Memimage *i)
8 324891a5 2006-06-25 devnull {
9 324891a5 2006-06-25 devnull Memsubfont *f;
10 324891a5 2006-06-25 devnull
11 324891a5 2006-06-25 devnull f = malloc(sizeof(Memsubfont));
12 324891a5 2006-06-25 devnull if(f == 0)
13 324891a5 2006-06-25 devnull return 0;
14 324891a5 2006-06-25 devnull f->n = n;
15 324891a5 2006-06-25 devnull f->height = height;
16 324891a5 2006-06-25 devnull f->ascent = ascent;
17 324891a5 2006-06-25 devnull f->info = info;
18 324891a5 2006-06-25 devnull f->bits = i;
19 324891a5 2006-06-25 devnull if(name)
20 324891a5 2006-06-25 devnull f->name = strdup(name);
21 324891a5 2006-06-25 devnull else
22 324891a5 2006-06-25 devnull f->name = 0;
23 324891a5 2006-06-25 devnull return f;
24 324891a5 2006-06-25 devnull }
25 324891a5 2006-06-25 devnull
26 324891a5 2006-06-25 devnull void
27 324891a5 2006-06-25 devnull freememsubfont(Memsubfont *f)
28 324891a5 2006-06-25 devnull {
29 324891a5 2006-06-25 devnull if(f == 0)
30 324891a5 2006-06-25 devnull return;
31 324891a5 2006-06-25 devnull free(f->info); /* note: f->info must have been malloc'ed! */
32 324891a5 2006-06-25 devnull freememimage(f->bits);
33 324891a5 2006-06-25 devnull free(f);
34 324891a5 2006-06-25 devnull }