-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Additional information:
I have checked the value returned by in.flags() (flags associated to the
stream) and they are not the same on GNU/Linux and Windows.

Emmanuel

Emmanuel Engelhart a écrit :
> Subject was "Re: [openZIM dev-l] Suggested Budget for 2010"
> 
> Your new implementation which should help to avoid the 2GB limit under
> windows works well on GNU/Linux. Unfortunately, on Windows with MSVC
> this is not the case.
> 
> Few things to modify to achieve to compile:
> * remove the #include <unistd.h> which is a POSIX specific header... and
> seems not to be necessary under GNU/Linux.
> * include io.h in fstream.[h|cpp]
> 
> After that it will achieve to compile... But unfortunately it does not
> run *at all*. I always get reading errors. The errors are not always at
> the same place, depends on file I try to open.
> 
> For example with the following file, the process dies pretty early by
> reading the header:
> http://tmp.kiwix.org/zim/0.9/wikipedia_en_wp1_0.7_30000+_05_2009_beta3.zim
> 
> After reading the 72 first bytes from the header, the stream has the
> fail flag... In fact, if I only read 16 bytes it's OK (until the next
> read error), but more than 17 and I will get an error. The byte at the
> 16th position has the value 26 which is maybe interpreted as a end of
> file character.
> 
> But with an other file... the error may occurs later.
> 
> So, it seems to me that the problem depends on the content and is
> independent of the file size. Maybe the file is read in text mode and
> not in binary mode... but I have no evidence of that.
> 
> Someone has an idea?
> 
> Emmanuel
> 
> Tommi Mäkitalo a écrit :
>> Great news! So lets go on doing something useful for that money;-)
> 
>> I'm back from my vacation and already checked in the first of what I've 
>> done. I 
>> was offline but had my netbook with me.
> 
>> I successfully replaced the std::ifstream with my own implentation. So for 
>> the 
>> windows porters there should be one a single system call left to #ifdef with 
>> some win32-specific call. In zimlib/src/fstream.cpp there is a call to 
>> lseek64.
> 
>> Tommi
_______________________________________________
dev-l mailing list
[email protected]
https://intern.openzim.org/mailman/listinfo/dev-l

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAku9fuEACgkQn3IpJRpNWtOknwCdFbjoZkaJxmNBCjTqF0k6WTgQ
4eEAn3dYnSI2XJCmMxY+E7YY/5R1MHOf
=URJQ
-----END PGP SIGNATURE-----
_______________________________________________
dev-l mailing list
[email protected]
https://intern.openzim.org/mailman/listinfo/dev-l

Reply via email to