Review Request 117701: Fix crashers in KStartupInfo on remove while iterating

Martin Gräßlin mgraesslin at kde.org
Thu Apr 24 05:27:03 UTC 2014


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/117701/
-----------------------------------------------------------

(Updated April 24, 2014, 7:27 a.m.)


Review request for KDE Frameworks, Àlex Fiestas and Bhushan Shah.


Changes
-------

Changed the method name to removeStartupInfoInternal and added a small documentation to what it does. Will now change the other one in another review request.


Bugs: 332681
    https://bugs.kde.org/show_bug.cgi?id=332681


Repository: kwindowsystem


Description
-------

Fix crashers in KStartupInfo on remove while iterating

This is similar to the change ... just for more cases. If the API was
used with ::checkStartup it could happen that an item got removed from
the startups while iterating the list of startups. Thus the data
corrupted resulting in a crash when getting a similar crash.

In this case the code now uses erase instead of remove to have a valid
iterator.

BUG: 332681


Diffs (updated)
-----

  autotests/kstartupinfo_unittest.cpp 29fa320bc2c82e7e04a7322111bcdba44b7078c6 
  src/kstartupinfo.cpp 6a95ce2d2eb79abbfbd072fa922f458da30d37eb 

Diff: https://git.reviewboard.kde.org/r/117701/diff/


Testing
-------

See new unit tests which crash without the change. For people wanting to run the test: be warned it has the power to crash plasma-shell and kwin.


Thanks,

Martin Gräßlin

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20140424/586db244/attachment.html>


More information about the Kde-frameworks-devel mailing list