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

Comparing ray/src/hd/rholo3.c (file contents):
Revision 3.3 by gregl, Tue Nov 4 09:58:24 1997 UTC vs.
Revision 3.4 by gregl, Tue Nov 4 11:52:21 1997 UTC

# Line 15 | Line 15 | static char SCCSid[] = "$SunId$ SGI";
15   #define sgn(x)          ((x) > 0 ? 1 : (x) < 0 ? -1 : 0)
16  
17  
18 < static PACKHEAD *complist;      /* list of beams to compute */
19 < static int      complen;        /* length of complist */
20 < static int      listpos;        /* current list position for next_packet */
21 < static int      lastin = -1;    /* last ordered position in list */
18 > static PACKHEAD *complist=NULL; /* list of beams to compute */
19 > static int      complen=0;      /* length of complist */
20 > static int      listpos=0;      /* current list position for next_packet */
21 > static int      lastin= -1;     /* last ordered position in list */
22  
23  
24   int
# Line 236 | Line 236 | init_global()                  /* initialize global ray computation *
236                          while (k--)
237                                  complist[k].nr = frac * complist[k].nr;
238          }
239 <        listpos = 0; lastin = -1;
239 >        listpos = 0; lastin = -1;       /* flag initial sort */
240   }
241  
242  
# Line 294 | Line 294 | sortcomplist()                 /* fix our list order */
294          for (i = complen; i-- && complist[i].nr <=
295                          bnrays(hdlist[complist[i].hd],complist[i].bi); )
296                  ;
297 <        if (i < complen-1) {
297 >        if (i < 0) {
298 >                free((char *)complist);
299 >                complist = NULL;
300 >                complen = 0;
301 >        } else if (i < complen-1) {
302                  list2 = (PACKHEAD *)realloc((char *)complist,
303                                  (i+1)*sizeof(PACKHEAD));
304                  if (list2 != NULL) {

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines