File corruption with KSaveFile on full disk

David Faure faure at kde.org
Tue Sep 15 13:00:15 BST 2009


On Friday 11 September 2009, Oswald Buddenhagen wrote:
> On Wed, Sep 09, 2009 at 10:37:20PM +0200, Jaime Torres Amate wrote:
> > In my modest opinion, the problem is not in KSaveFile, but in KConfig
> > write()s to the KSaveFile temporary file,
> 
> well ... both ksavefile and kconfigini are screwed up, so there is no
> point in arguing. :D

Nope, only KConfig was screwed up.
Created a reproduceable testcase, and fixed it in r1023830/r1023836.

It was a fun dialogue between QFile and KConfig... QFile::size() returned 0
because ensureFlushed() failed, and KConfig deduced from that, that
the file _on disk_ was empty and should be deleted (!).

-- 
David Faure, faure at kde.org, sponsored by Nokia to work on KDE,
Konqueror (http://www.konqueror.org), and KOffice (http://www.koffice.org).




More information about the kde-core-devel mailing list