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

Comparing ray/src/ot/readobj2.c (file contents):
Revision 1.1 by greg, Wed May 29 17:33:18 1991 UTC vs.
Revision 1.3 by greg, Wed Jul 17 13:56:02 1991 UTC

# Line 51 | Line 51 | int  (*callback)();
51                  } else if (c == '!') {                  /* command */
52                          ungetc(c, infp);
53                          fgetline(buf, sizeof(buf), infp);
54 <                        readobj(buf);
54 >                        readobj(buf, callback);
55                  } else {                                /* object */
56                          ungetc(c, infp);
57                          getobject(input, infp, callback);
# Line 72 | Line 72 | int  (*f)();
72          char  sbuf[MAXSTR];
73          OBJREC  thisobj;
74                                          /* get modifier */
75 <        fscanf(fp, "%s", sbuf);
76 <        thisobj.omod = modifier(sbuf);
75 >        fscanf(fp, "%*s");
76 >        thisobj.omod = OVOID;
77                                          /* get type */
78          fscanf(fp, "%s", sbuf);
79          if (!strcmp(sbuf, ALIASID))
# Line 123 | Line 123 | readfargs(fa, fp)              /* read function arguments from str
123   register FUNARGS  *fa;
124   FILE  *fp;
125   {
126 +        extern char  *strcpy();
127          char  sbuf[MAXSTR];
128          int  n;
129          register int  i;
# Line 136 | Line 137 | FILE  *fp;
137                  for (i = 0; i < fa->nsargs; i++) {
138                          if (fscanf(fp, "%s", sbuf) != 1)
139                                  return(-1);
140 <                        fa->sarg[i] = savestr(sbuf);
140 >                        fa->sarg[i] = malloc(strlen(sbuf)+1);
141 >                        if (fa->sarg[i] == NULL)
142 >                                goto memerr;
143 >                        (void)strcpy(fa->sarg[i], sbuf);
144                  }
145          } else
146                  fa->sarg = NULL;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines