--- ray/src/common/font.c 2003/05/13 17:58:32 2.14 +++ ray/src/common/font.c 2004/03/26 23:04:23 2.19 @@ -1,5 +1,5 @@ #ifndef lint -static const char RCSid[] = "$Id: font.c,v 2.14 2003/05/13 17:58:32 greg Exp $"; +static const char RCSid[] = "$Id: font.c,v 2.19 2004/03/26 23:04:23 greg Exp $"; #endif /* * Polygonal font handling routines @@ -7,8 +7,11 @@ static const char RCSid[] = "$Id: font.c,v 2.14 2003/0 #include "copyright.h" -#include "standard.h" +#include +#include "paths.h" +#include "rtio.h" +#include "rterror.h" #include "font.h" #define galloc(nv) (GLYPH *)malloc(sizeof(GLYPH)+2*sizeof(GORD)*(nv)) @@ -24,7 +27,7 @@ getfont(fname) /* return font fname */ char *fname; { FILE *fp; - char *pathname, *err; + char *pathname, *err = NULL; unsigned wsum, hsum, ngly; int gn, ngv, gv; register GLYPH *g; @@ -117,6 +120,7 @@ fonterr: error(USER, errmsg); memerr: error(SYSTEM, "out of memory in fontglyph"); + return NULL; /* pro forma return */ } @@ -128,12 +132,12 @@ FONT *fnt; register FONT *fl, *f; register int i; /* check reference count */ - if (fnt != NULL && (fnt->nref-- > 1 | retainfonts)) + if (fnt != NULL && ((fnt->nref-- > 1) | retainfonts)) return; head.next = fontlist; fl = &head; while ((f = fl->next) != NULL) - if ((fnt == NULL | fnt == f)) { + if ((fnt == NULL) | (fnt == f)) { fl->next = f->next; for (i = 0; i < 256; i++) if (f->fg[i] != NULL) @@ -207,7 +211,7 @@ FONT *f; /* font */ int cis; /* target intercharacter spacing */ int nsi; /* minimum number of spaces for indent */ { - register char *end, *tab; + register char *end, *tab = NULL; GLYPH *gp; short *nsp; int alen, len, width;