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

Comparing ray/src/rt/func.c (file contents):
Revision 2.39 by greg, Wed Mar 30 16:00:56 2022 UTC vs.
Revision 2.41 by greg, Mon Sep 16 17:31:14 2024 UTC

# Line 148 | Line 148 | getfunc(       /* get function for this modifier */
148                  } else                          /* reference_count++ */
149                          varset(REFVNAME, '=', varvalue(REFVNAME)+1.0);
150          }
151 <        curfunc = NULL;                 /* parse expressions */
151 >        ecurfunc = NULL;                        /* parse expressions */
152          sprintf(sbuf, "%s \"%s\"", ofun[m->otype].funame, m->oname);
153          for (i=0, ne=0; ef && i < na; i++, ef>>=1)
154                  if (ef & 1) {                   /* flagged as an expression? */
# Line 157 | Line 157 | getfunc(       /* get function for this modifier */
157                          initstr(arg[i], sbuf, 0);
158                          f->ep[ne++] = getE1();
159                          if (nextc != EOF)
160 <                                syntax("unexpected character");
160 >                                esyntax("unexpected character");
161                  }
162          if (ef)
163                  goto toofew;
# Line 203 | Line 203 | freefunc(                      /* free memory associated with modifier */
203          if ((f = (MFUNC *)m->os) == NULL)
204                  return;
205          for (i = 0; f->ep[i] != NULL; i++)
206 <                epfree(f->ep[i]);
206 >                epfree(f->ep[i],1);
207          if (f->ctx[0]) {                        /* done with definitions */
208                  calcontext(f->ctx);
209                  i = varvalue(REFVNAME)-.5;      /* reference_count-- */
# Line 290 | Line 290 | loadfunc(                      /* load definition file */
290                  error(SYSTEM, errmsg);
291          }
292          fcompile(ffname);
293 +        doptimize(1);           /* optimize definitions */
294   }
295  
296  
# Line 335 | Line 336 | chanvalue(                     /* return channel n to calcomp */
336   )
337   {
338          if (fray == NULL)
339 <                syntax("ray parameter used in constant expression");
339 >                esyntax("ray parameter used in constant expression");
340  
341          if (--n < 0)
342                  goto badchan;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines