[Panel-devel] Multithreaded krunner

Ryan Bitanga ephebiphobic at gmail.com
Sun Dec 2 05:56:22 CET 2007


One week after said I'd send the patch in an hour, here's the patch
that fixes the blocked GUI problem of a multithreaded KRunner. I
initially thought it would be a simple patch and it turns out it was,
except there was one _little_ bug that had several symptoms that I
couldn't quite fix. After a week of unsuccessfully trying to put my
school stuff first and get krunner out of head, I realized the source
of the problem while trying to cram for a test. I fixed it right after
my test yesterday and I'm glad to report that it works as expected,
though I wish I could say the same for my test. haha

Anyway the changes to the last patch I posted are:
AbstractRunner:
- Add a non-virtual performMatch method that stores a copy of the
global search context

SearchContext:
- Remove several locks
- Add an addMatches(term,exact,possible,info) method
- Add a clearMatches method (needed to avoid memory leaks when KRunner exits)

SearchAction:
- Store the value of the search term and mimetype because the local
context is destroyed when it goes out of scope.

If all's well, will we be committing this soon?

Cheers,
Ryan
-------------- next part --------------
A non-text attachment was scrubbed...
Name: krunner-743835.diff.bz2
Type: application/x-bzip2
Size: 5732 bytes
Desc: not available
Url : http://mail.kde.org/pipermail/panel-devel/attachments/20071202/d35b881f/attachment-0001.bz2 


More information about the Panel-devel mailing list