| 160 |
|
if (i < 0) /* create face if indices OK */ |
| 161 |
|
f = addFace(sc, varr, ac); |
| 162 |
|
if (varr != vdef) |
| 163 |
< |
efree((char *)varr); |
| 163 |
> |
efree(varr); |
| 164 |
|
return(f != NULL); |
| 165 |
|
} |
| 166 |
|
|
| 171 |
|
FILE *fp; |
| 172 |
|
char *argv[MAXARG]; |
| 173 |
|
int argc; |
| 174 |
< |
char buf[256]; |
| 174 |
> |
char buf[1024]; |
| 175 |
|
int nstats=0, nunknown=0; |
| 176 |
|
int onfaces; |
| 177 |
|
VNDX ondx; |
| 192 |
|
error(SYSTEM, errmsg); |
| 193 |
|
return(NULL); |
| 194 |
|
} |
| 195 |
+ |
#ifdef getc_unlocked /* avoid stupid semaphores */ |
| 196 |
+ |
flockfile(fp); |
| 197 |
+ |
#endif |
| 198 |
|
if (sc == NULL) |
| 199 |
|
sc = newScene(); |
| 200 |
|
lineno = 0; |
| 290 |
|
#endif |
| 291 |
|
if (fp != stdin) |
| 292 |
|
fclose(fp); |
| 293 |
+ |
#ifdef getc_unlocked |
| 294 |
+ |
else |
| 295 |
+ |
funlockfile(fp); |
| 296 |
+ |
#endif |
| 297 |
|
if (verbose) |
| 298 |
|
fprintf(stderr, "Read %d statements\n", nstats); |
| 299 |
< |
sprintf(buf, "%d statements read from \"%s\"", nstats, fspec); |
| 299 |
> |
if (strlen(fspec) < sizeof(buf)-32) |
| 300 |
> |
sprintf(buf, "%d statements read from \"%s\"", nstats, fspec); |
| 301 |
> |
else |
| 302 |
> |
sprintf(buf, "%d statements read from (TOO LONG TO SHOW)", nstats); |
| 303 |
|
addComment(sc, buf); |
| 304 |
|
if (nunknown) { |
| 305 |
|
sprintf(buf, "\t%d unrecognized", nunknown); |