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

Comparing ray/src/common/objset.c (file contents):
Revision 2.9 by greg, Tue Feb 25 02:47:21 2003 UTC vs.
Revision 2.13 by schorsch, Mon Jul 21 22:30:17 2003 UTC

# Line 16 | Line 16 | static const char      RCSid[] = "$Id$";
16   #include  "object.h"
17  
18   #ifndef  OSTSIZ
19 < #ifdef  BIGMEM
20 < #define  OSTSIZ         262139          /* object table size (a prime!) */
21 < #else
19 > #ifdef  SMLMEM
20   #define  OSTSIZ         32749           /* object table size (a prime!) */
21 + #else
22 + #define  OSTSIZ         262139          /* object table size (a prime!) */
23   #endif
24   #endif
25  
# Line 209 | Line 209 | tryagain:
209                  ot = oseti(i*OSTSIZ + osentry);
210                  if (*os > 0)                    /* found it */
211                          return(ot);
212 <                if (!isfull(ot))                /* entry overflow */
212 >                if (!isfull(ot)) {              /* entry overflow */
213                          if (++ntries < OSTSIZ)
214                                  goto tryagain;
215                          else
216                                  error(INTERNAL, "hash table overflow in fullnode");
217 +                }
218                                                  /* remember position */
219                  i = os - ostable[osentry];
220                  os = ostable[osentry] = (OBJECT *)realloc(
221 <                                (char *)ostable[osentry],
221 >                                (void *)ostable[osentry],
222                                  (unsigned)(i+oset[0]+2)*sizeof(OBJECT));
223                  if (os == NULL)
224                          goto memerr;
# Line 229 | Line 230 | tryagain:
230          return(ot);
231   memerr:
232          error(SYSTEM, "out of memory in fullnode");
233 +        return NULL; /* pro forma return */
234   }
235  
236  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines