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

Comparing ray/src/hd/rhoptimize.c (file contents):
Revision 3.9 by greg, Tue May 13 17:58:33 2003 UTC vs.
Revision 3.12 by schorsch, Mon Jun 30 14:59:12 2003 UTC

# Line 7 | Line 7 | static const char      RCSid[] = "$Id$";
7   *      11/4/98         Greg Ward Larson
8   */
9  
10 #include "holo.h"
11
10   #include <signal.h>
11 + #include <string.h>
12 + #ifdef _WIN32
13 +  #include <process.h> /* getpid() */
14 + #endif
15  
16 + #include "holo.h"
17 +
18   #ifndef BKBSIZE
19   #define BKBSIZE         256             /* beam clump size (kilobytes) */
20   #endif
# Line 19 | Line 23 | char   *progname;
23   char    tempfile[128];
24   int     dupchecking = 0;
25  
22 extern char     *rindex();
26   extern long     rhinitcopy();
27  
28  
# Line 52 | Line 55 | char   *argv[];
55                          error(SYSTEM, errmsg);
56                  }
57                  strcpy(tempfile, inpname);
58 <                if ((outname = rindex(tempfile, '/')) != NULL)
58 >                if ((outname = strrchr(tempfile, '/')) != NULL)
59                          outname++;
60                  else
61                          outname = tempfile;
# Line 67 | Line 70 | char   *argv[];
70                  lseek(hdfd[0], (off_t)nextipos, 0);
71                  read(hdfd[0], (char *)&nextipos, sizeof(nextipos));
72                                          /* get output position; set last */
73 <                thisopos = lseek(hdfd[1], (off_t)0L, 2);
73 >                thisopos = lseek(hdfd[1], (off_t)0, 2);
74                  if (lastopos > 0L) {
75                          lseek(hdfd[1], (off_t)lastopos, 0);
76                          write(hdfd[1], (char *)&thisopos, sizeof(thisopos));
77 <                        lseek(hdfd[1], (off_t)0L, 2);
77 >                        lseek(hdfd[1], (off_t)0, 2);
78                  }
79                  lastopos = thisopos;
80                  thisopos = 0L;          /* write place holder */
# Line 172 | Line 175 | static int
175   bpcmp(b1p, b2p)                 /* compare beam positions on disk */
176   int     *b1p, *b2p;
177   {
178 <        register long   pdif = beamdir[*b1p].fo - beamdir[*b2p].fo;
178 >        register off_t  pdif = beamdir[*b1p].fo - beamdir[*b2p].fo;
179  
180          if (pdif < 0L) return(-1);
181          return(pdif > 0L);
# Line 196 | Line 199 | int    *bq, nb;
199                  bp = hdgetbeam(hp, bq[i]);
200                  DCHECK(bp==NULL, CONSISTENCY, "empty beam in xferclump");
201                  n = dupchecking ? nuniq(hdbray(bp),bp->nrm) : bp->nrm;
202 <                bcopy((void *)hdbray(bp), (void *)hdnewrays(hout,bq[i],n),
202 >                memcpy((void *)hdnewrays(hout,bq[i],n),(void *)hdbray(bp),
203                                  n*sizeof(RAYVAL));
204                  hdfreebeam(hp, bq[i]);
205          }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines