KPixampCache crash

Christian Ehrlicher 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
> Ehrlicher:
> > > 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
> cache
> > > 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
> in 
> 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)


Christian
-- 
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 mailing list