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

Comparing ray/src/rt/pmapdata.c (file contents):
Revision 2.15 by rschregle, Tue May 17 17:39:47 2016 UTC vs.
Revision 2.17 by greg, Thu Sep 29 20:51:07 2016 UTC

# Line 105 | Line 105 | void initPhotonHeap (PhotonMap *pmap)
105        /* Open heap file */
106        if (!(pmap -> heap = tmpfile()))
107           error(SYSTEM, "failed opening heap file in initPhotonHeap");
108 + #ifdef F_SETFL  /* XXX is there an alternate needed for Windows? */
109        fdFlags = fcntl(fileno(pmap -> heap), F_GETFL);
110        fcntl(fileno(pmap -> heap), F_SETFL, fdFlags | O_APPEND);
111 + #endif
112   /*      ftruncate(fileno(pmap -> heap), 0); */
113     }
114   }
# Line 139 | Line 141 | void flushPhotonHeap (PhotonMap *pmap)
141     /*if (pwrite(fd, pmap -> heapBuf, len, lseek(fd, 0, SEEK_END)) != len) */
142     if (write(fd, pmap -> heapBuf, len) != len)
143        error(SYSTEM, "failed append to heap file in flushPhotonHeap");
144 <  
144 >
145 > #if !defined(_WIN32) && !defined(_WIN64)
146     if (fsync(fd))
147        error(SYSTEM, "failed fsync in flushPhotonHeap");
148 <      
148 > #endif
149     pmap -> heapBufLen = 0;
150   }
151  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines