Ch.Ehrlicher at gmx.de
Thu Aug 23 15:38:28 CEST 2007
> Von: Rivo Laks
> Ühel kenal päeval (neljapäev 23 august 2007) kirjutas Christian
> > > Von: "Jarosław Staniek"
> > > In the patch below I have:
> > > 1. Used USE_MMAP everywhere instead of HAVE_MMAP (OK?)
> > > 2. Disabled using mmap for Windows (temporarily I suppose)
> > > 3. I've added some fixes so even if mmap is enabled on Windows, the
> > > now
> > > will not crash.
> > That's fine - altough it's currently only crashed on windows, it can not
> > work on other platforms too as QFile::handle() can be everything but the
> > correct handle needed for mmap(). It's just luck that it works on other
> > platforms.
> I don't understand - Qt docs say that QFile::handle() can be used with C
> library functions.
Looks like I've to write a bug report to trolltech... it was true for Qt < 4.3.
Thiago, we had a discussion about this a long time ago (imho when 4.3 beta was out and I wondered why kbuilsycoca suddenly crashed).
> Is Windows mmap() different somehow?
No, it's my own implementation and works very well when a handle != 0 is passed...
> Also, I checked and ksycoca (kdelibs/kdecore/sycoca/ksycoca.cpp) uses mmap
> almost exactly the same way as I am (only difference is that sycoca uses
> read-only mode, I use read-write). Does sycoca work fine on windows?
It works, but without mmap support for win32 (e.g. mmap() is called but returns -1)
Der GMX SmartSurfer hilft bis zu 70% Ihrer Onlinekosten zu sparen!
Ideal für Modem und ISDN: http://www.gmx.net/de/go/smartsurfer
More information about the Kde-windows