--- ray/src/px/pinterp.c 1993/04/01 11:21:18 2.10 +++ ray/src/px/pinterp.c 1994/02/27 10:16:57 2.13 @@ -197,6 +197,8 @@ char *argv[]; if (ourpict == NULL || ourzbuf == NULL) syserror(progname); bzero((char *)ourzbuf, hresolu*vresolu*sizeof(float)); + /* new header */ + newheader("RADIANCE", stdout); /* get input */ for ( ; i < argc; i += 2) addpicture(argv[i], argv[i+1]); @@ -241,8 +243,9 @@ char *s; { char fmt[32]; - if (isformat(s)) { - formatval(fmt, s); + if (isheadid(s)) + return; + if (formatval(fmt, s)) { wrongformat = strcmp(fmt, COLRFMT); return; } @@ -303,7 +306,6 @@ char *pfile, *zspec; register int x; if (!isfloat(zspec) || (zvalue = atof(zspec)) <= 0.0) syserror(zspec); - exit(1); for (x = scanlen(&tresolu); x-- > 0; ) zin[x] = zvalue; } @@ -696,14 +698,14 @@ char *prog, *args; cp = combuf; wp = argv; for ( ; ; ) { - while (isspace(*cp)) cp++; - if (!*cp) break; - *wp++ = cp; - while (!isspace(*cp)) - if (!*cp++) goto done; - *cp++ = '\0'; + while (isspace(*cp)) /* nullify spaces */ + *cp++ = '\0'; + if (!*cp) /* all done? */ + break; + *wp++ = cp; /* add argument to list */ + while (*++cp && !isspace(*cp)) + ; } -done: *wp = NULL; /* start process */ if ((rval = open_process(PDesc, argv)) < 0)