ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/src/rt/rpict.c
(Generate patch)

Comparing ray/src/rt/rpict.c (file contents):
Revision 2.8 by greg, Fri Jul 10 14:58:19 1992 UTC vs.
Revision 2.11 by greg, Sun Aug 9 20:28:41 1992 UTC

# Line 77 | Line 77 | extern long  nrays;                    /* number of rays traced */
77  
78   #define  pixjitter()    (.5+dstrpix*(.5-frandom()))
79  
80 + #define  RFTEMPLATE     "rfXXXXXX"
81   #define  HFTEMPLATE     "/tmp/hfXXXXXX"
82  
83   static char  *hfname = NULL;            /* header file name */
# Line 179 | Line 180 | char  *pout, *zout, *prvr;
180   */
181   {
182          extern char  *rindex(), *strncpy(), *strcat();
183 <        char  fbuf[128], fbuf2[128], *zf;
183 >        char  fbuf[128], fbuf2[128];
184 >        register char  *cp;
185          RESOLU  rs;
186          double  pa;
187                                          /* finished writing header */
# Line 197 | Line 199 | char  *pout, *zout, *prvr;
199          if (seq <= 0)
200                  seq = 0;
201          else if (prvr != NULL && isint(prvr)) {
202 <                int  rn;                        /* skip to specified view */
202 >                register int  rn;               /* skip to specified view */
203                  if ((rn = atoi(prvr)) < seq)
204                          error(USER, "recover frame less than start frame");
205                  if (pout == NULL)
# Line 209 | Line 211 | char  *pout, *zout, *prvr;
211          }
212          if (pout != NULL) {
213                  sprintf(fbuf, pout, seq);
214 <                if (!strcmp(prvr, fbuf)) {      /* rename recover file */
214 >                if (prvr != NULL && !strcmp(prvr, fbuf)) {      /* rename */
215                          fbuf2[0] = '\0';
216 <                        if ((prvr = rindex(fbuf, '/')) != NULL)
217 <                                strncpy(fbuf2, fbuf, prvr-fbuf+1);
218 <                        strcat(fbuf2, "rfXXXXXX");
216 >                        if ((cp = rindex(fbuf, '/')) != NULL)
217 >                                strncpy(fbuf2, fbuf, cp-fbuf+1);
218 >                        strcat(fbuf2, RFTEMPLATE);
219                          prvr = mktemp(fbuf2);
220                          if (rename(fbuf, prvr) < 0 && errno != ENOENT) {
221                                  sprintf(errmsg,
# Line 244 | Line 246 | char  *pout, *zout, *prvr;
246                          "cannot recover view parameters from \"%s\"", prvr);
247                                  error(WARNING, errmsg);
248                          } else {
247                                char  *err;
248                                if ((err = setview(&ourview)) != NULL)
249                                        error(USER, err);
249                                  pa = 0.0;
250                                  hres = scanlen(&rs);
251                                  vres = numscans(&rs);
252                          }
253 +                if ((cp = setview(&ourview)) != NULL)
254 +                        error(USER, cp);
255                  normaspect(viewaspect(&ourview), &pa, &hres, &vres);
256                  if (seq) {
257                          if (ralrm > 0) {
258 <                                sprintf(errmsg, "starting frame %d\n", seq);
259 <                                eputs(errmsg);
258 >                                fprintf(stderr, "FRAME %d:", seq);
259 >                                fprintview(&ourview, stderr);
260 >                                putc('\n', stderr);
261 >                                fflush(stderr);
262                          }
263                          printf("FRAME=%d\n", seq);
264                  }
# Line 267 | Line 270 | char  *pout, *zout, *prvr;
270                  fputformat(COLRFMT, stdout);
271                  putchar('\n');
272                  if (zout != NULL)
273 <                        sprintf(zf=fbuf, zout, seq);
273 >                        sprintf(cp=fbuf, zout, seq);
274                  else
275 <                        zf = NULL;
276 <                render(zf, prvr);
275 >                        cp = NULL;
276 >                render(cp, prvr);
277                  prvr = NULL;
278          } while (seq++);
279   }
# Line 279 | Line 282 | char  *pout, *zout, *prvr;
282   nextview(fp)                            /* get next view from fp */
283   FILE  *fp;
284   {
285 <        char  linebuf[256], *err;
285 >        char  linebuf[256];
286  
287          while (fgets(linebuf, sizeof(linebuf), fp) != NULL)
288 <                if (isview(linebuf) && sscanview(&ourview, linebuf) > 0) {
286 <                        if ((err = setview(&ourview)) != NULL)
287 <                                error(USER, err);
288 >                if (isview(linebuf) && sscanview(&ourview, linebuf) > 0)
289                          return(0);
289                }
290          return(EOF);
291   }      
292  
# Line 615 | Line 615 | char  *oldfile;
615          unlink(oldfile);
616          return(y);
617   writerr:
618 <        error(SYSTEM, "write error in salvage");
618 >        sprintf(errmsg, "write error during recovery of \"%s\"", oldfile);
619 >        error(SYSTEM, errmsg);
620   }
621  
622  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines