--- ray/src/hd/rhd_qtree.c 1998/01/01 13:00:15 3.17 +++ ray/src/hd/rhd_qtree.c 2003/02/22 02:07:24 3.19 @@ -1,9 +1,6 @@ -/* Copyright (c) 1997 Silicon Graphics, Inc. */ - #ifndef lint -static char SCCSid[] = "$SunId$ SGI"; +static const char RCSid[] = "$Id: rhd_qtree.c,v 3.19 2003/02/22 02:07:24 greg Exp $"; #endif - /* * Quadtree driver support routines. */ @@ -89,8 +86,8 @@ int really; } /* else "really" means free up memory */ for (i = 0; twigbundle[i] != NULL; i++) - free((char *)twigbundle[i]); - free((char *)twigbundle); + free((void *)twigbundle[i]); + free((void *)twigbundle); twigbundle = NULL; } @@ -332,9 +329,9 @@ dropit: } -dev_value(c, p, v) /* add a pixel value to our quadtree */ +dev_value(c, d, p) /* add a pixel value to our quadtree */ COLR c; -FVECT p, v; +FVECT d, p; { register int li; int mapit; @@ -353,8 +350,11 @@ FVECT p, v; qtCompost(LFREEPCT); mapit = 0; /* we'll map it later */ } - VCOPY(qtL.wp[li], p); - qtL.wd[li] = encodedir(v); + if (p == NULL) + VSUM(qtL.wp[li], odev.v.vp, d, FHUGE); + else + VCOPY(qtL.wp[li], p); + qtL.wd[li] = encodedir(d); tmCvColrs(&qtL.brt[li], qtL.chr[li], c, 1); if (putleaf(li, 1)) { if (mapit)