Revision 6e051d4...

Go back to digest for 22nd May 2011

Bug Fixes in KDE Base

Sebastian Trueg committed changes in [kde-runtime] /services/strigi:

Fixed a memory leak.

The index scheduler thread does not have an event loop. Thus, objects
which are queued to be deleted via QObject::deleteLater() are never
actually deleted. This applies to the KJob instances created by the
data management API.
By disabling KJob's autoDelete feature and deleting the jobs manually
this problem can be solved.

This, however, is not the best solution. First local event loops are
always problematic, and second the jobs themselves could use queued
deletion, too. (In fact, in this case they are which is another problem
to be solved.)

File Changes

Modified 7 files
  • /services/strigi
  •   nepomuk/indexscheduler.cpp
  •   nepomuk/nepomukindexer.cpp
  •   nepomuk/util.cpp
  •   nepomuk/util.h
  •   nepomuk/indexer/main.cpp
  •   nepomuk/indexer/nepomukindexfeeder.cpp
  •   nepomuk/indexer/nepomukindexwriter.cpp
7 files changed in total