@@ 61,6 61,7 @@ static Font *f;
static Fontdir *dirs, *cdir;
static int ndirs, idir;
static char lasterr[256];
+int mainstacksize = 32768;
static void
redraw(void)
@@ 120,7 121,7 @@ fontdir(char *t, int f, Fontdir *fdir)
long i, n;
k = strlen(t);
- if(k > 4 && strcmp(&t[k-4], ".ttf") == 0){
+ if(k > 4 && (cistrcmp(&t[k-4], ".ttf") == 0 || cistrcmp(&t[k-4], ".otf") == 0)){
fdir->nfonts = 1;
fdir->sz = Ttfdefsz;
fdir->isttf = 1;
@@ 165,7 166,7 @@ findfonts(char *prefix)
long i, n;
char t[1024];
- doff = sprint(t, prefix);
+ doff = sprint(t, "%s", prefix);
t[doff++] = '/';
t[doff] = 0;
if((f = open(t, OREAD)) < 0){
@@ 177,8 178,9 @@ findfonts(char *prefix)
close(f);
return;
}
+ close(f);
for(i = 0; i < n; i++){
- sprint(t+doff, d[i].name);
+ strcpy(t+doff, d[i].name);
if((fin = open(t, OREAD)) < 0)
continue;
if((din = dirfstat(fin)) != nil){
@@ 276,7 278,7 @@ threadmain(int argc, char **argv)
if(argc > 1)
usage();
else if(argc == 1)
- loadtext(strcmp(argv[0], "-") == 0 ? 0 : open(argv[1], OREAD));
+ loadtext(strcmp(argv[0], "-") == 0 ? 0 : open(argv[0], OREAD));
for(n = 0; n < nelem(prefixes); n++)
findfonts(prefixes[n]);