| AWARE [SYSTEMS] | Imaging expertise for the Delphi developer | |||||||
![]() |
TIFF and LibTiff Mailing List Archive | |||||||
LibTiff Mailing List
TIFF and LibTiff Mailing List Archive Contact
The TIFF Mailing List Homepage |
Thread2008.08.23 16:23 "Re: creating sparse files......", by Rogier WolffOn Sat, Aug 23, 2008 at 11:07:20AM -0500, Bob Friesenhahn wrote: > On Sat, 23 Aug 2008, Rogier Wolff wrote: > > > >Ehh. You do have to take into account that this was written in the > >module "tif_unix.c" or something like that. Wether this is active on > >Microsof operating systems as well, I don't know. Sounds like it > >should not be.... > > Probably "tif_unix.c" should really be called "tif_posix.c". It does > actually work under Windows using Window's underscore-prefixed POSIX Well if it claims Posix compatibility, and then doesn't conform to the posix specifications, then I'd claim "it doesn't work". > API equivalents. If you use the 'configure' based build under Cygwin > or MinGW, then "tif_unix.c" will be used and "tif_unix.c" may be > selected under Windows in other situations as well. > > The Windows API documentation does not specify that intermediate bytes > are automatically initialized to zero if you seek past the end of the > file and write some data. The only WIN32 interface which is > documented to extend the file while initializing with zero is > chsize(), which is unfortunately limited to only 2GB due to the range > of off_t under WIN32. Which means that apparently the "ftruncate" call needs to be translated into chsize() by the library that pretends to provide posix compatibility on windows. http://www.opengroup.org/onlinepubs/009695399/functions/ftruncate.html If my suggestion doesn't work on windows, then I'm ok with #ifndef WINDOWS around my code. You (or someone else) was suggesting putting in deviceIoctl's... Well that's not portable and would also need to be surrounded by some ifdefs. Oh. You mentioned: "if it's YOUR application that becomes slower". Indeed, I'd feel bad about it. However, I'm used to this happening all the time. Every time I upgrade, things are becoming more bloated and slower. This doesn't only happen in "windows-land". My first Linux machine had a whopping 8M bytes of memory. I had that expanded to 20, a year later. I remember booting the machine, and thinking it had crashed with the HDD led turned on when I accidentally booted it one day with only 4M installed.... It popped up the default X root screen when I was moving my arm towards the reset button.... Roger. -- ** R.E.Wolff@BitWizard.nl ** http://www.BitWizard.nl/ ** +31-15-2600998 ** ** Delftechpark 26 2628 XH Delft, The Netherlands. KVK: 27239233 ** *-- BitWizard writes Linux device drivers for any device you may have! --* Q: It doesn't work. A: Look buddy, doesn't work is an ambiguous statement. Does it sit on the couch all day? Is it unemployed? Please be specific! Define 'it' and what it isn't doing. --------- Adapted from lxrbot FAQ |
|||||||