On 10/04/2016 10:53 PM, Peter Wu wrote:
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/128761/
On August 27th, 2016, 12:25 p.m. CEST, *Hugo Pereira Da Costa* wrote:
Ship It!
Congratulations with the release of Plasma 5.8! It contains the Breeze
fix (yay!), but Oxygen is unfortunately lacking this patch. Could you
merge it? Thanks!
Done
- Peter
On August 27th, 2016, 11:12 a.m. CEST, Peter Wu wrote:
Review request for Plasma, David Edmundson, David Faure, and Hugo
Pereira Da Costa.
By Peter Wu.
/Updated Aug. 27, 2016, 11:12 a.m./
*Bugs: * 356940 <https://bugs.kde.org/show_bug.cgi?id=356940>
*Repository: * oxygen
Description
Since Qt 5.6.0, Qt5 applications started crashing on exit. All signs
point to this delete-on-destroy hack which was added to avoid
outliving the plugin lifetime.
This method is wrong because the returned style is owned by the caller
(QApplication, QProxyStyle, etc) and will cleaned up when those users
are destructed.
Copied from breeze patch https://git.reviewboard.kde.org/r/128760/
Testing
Started |QT_STYLE_OVERRIDE=oxygen LD_LIBRARY_PATH=...
QT_PLUGIN_PATH=... wireshark -o| (an invalid option that triggers
|exit(1)|) and observe a heap-use-after free similar to the one
reported in the bug. Apply this patch, rebuild oxygen and notice that
the crash is fixed. Also tested with "Testcase (ASAN)" from bug
356940, crash is also gone.
Diffs
* kstyle/oxygenstyleplugin.cpp (70b90d9)
View Diff <https://git.reviewboard.kde.org/r/128761/diff/>