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

(Updated Oct. 11, 2016, 6:34 p.m.)


Status
------

This change has been marked as submitted.


Review request for Plasma, David Edmundson, David Faure, and Hugo Pereira Da 
Costa.


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/


Diffs
-----

  kstyle/oxygenstyleplugin.cpp 70b90d9 

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


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.


Thanks,

Peter Wu

Reply via email to