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

Comparing ray/src/common/idmap.c (file contents):
Revision 2.2 by greg, Fri Jul 26 18:37:21 2019 UTC vs.
Revision 2.3 by greg, Wed Aug 24 19:55:58 2022 UTC

# Line 121 | Line 121 | idmap_ropen(const char *fname, int hflags)
121                  free(idmp);
122                  return NULL;
123          }
124 <        if (fseek(idmp->finp, idmp->curpos = idmp->dstart, SEEK_SET) < 0)
124 >        if (fseek(idmp->finp, idmp->dstart, SEEK_SET) < 0)
125                  goto seekerr;
126          while (tablength > 0)           /* create index */
127                  idmp->nids += !idmp->idtable[--tablength];
# Line 159 | Line 159 | idmap_next_i(IDMAP *idmp)
159          if (ndx == EOF && feof(idmp->finp))
160                  return -1;
161  
162        idmp->curpos += idmp->bytespi;
163
162          ndx &= (1<<(idmp->bytespi<<3)) - 1;     /* undo sign extension */
163  
164          return ndx;
# Line 184 | Line 182 | idmap_next(IDMAP *idmp)
182   int
183   idmap_seek(IDMAP *idmp, int x, int y)
184   {
187        long    seekto;
188
185          if ((x < 0) | (y < 0) | (x >= idmp->res.xr) | (y >= idmp->res.yr))
186                  return 0;
187          
188 <        seekto = idmp->dstart + ((long)y*idmp->res.xr + x)*idmp->bytespi;
189 <
194 <        if (seekto != idmp->curpos && fseek(idmp->finp, seekto, SEEK_SET) < 0)
188 >        if (fseek(idmp->finp, idmp->dstart + ((long)y*idmp->res.xr + x)*idmp->bytespi,
189 >                        SEEK_SET) < 0)
190                  return -1;
191  
197        idmp->curpos = seekto;
198        
192          return 1;
193   }
194  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines