--===============1574628603209572118== Content-Type: multipart/alternative; boundary="===============2310056833087123252==" --===============2310056833087123252== MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/123494/ ----------------------------------------------------------- (Updated April 25, 2015, 2:09 p.m.) Status ------ This change has been marked as submitted. Review request for Plasma, Ivan Čukić and Marco Martin. Changes ------- Submitted with commit 317421fd23eabd17d84320a31552c40ccd45a778 by Bhushan Shah to branch master. Repository: plasma-workspace Description ------- This avoids the crash situation where something have created the activity consumer earlier and currentActivityChanged signal is emitted before view is created. ``` #0 PlasmaQuick::View::setContainment (this=0x0, cont=0x16a9fc0) at /home/bshah/aur/plasma-framework-git/src/plasma-framework/src/plasmaquick/view.cpp:243 #1 0x0000000000462097 in StandaloneAppCorona::currentActivityChanged (this=0x7772a0, newActivity=...) at /home/bshah/aur/plasma-workspace-git/src/plasma-workspace/shell/standaloneappcorona.cpp:192 #2 0x00007ffff32383c9 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/libQt5Core.so.5 #3 0x00007ffff71f9763 in KActivities::Consumer::currentActivityChanged (this=0x741aa0, _t1=...) at /home/bshah/aur/kactivities-git/src/build/src/lib/core/moc_consumer.cpp:216 #4 0x00007ffff71f94dd in KActivities::Consumer::qt_static_metacall (_o=0x741aa0, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0x7fffffffa570) at /home/bshah/aur/kactivities-git/src/build/src/lib/core/moc_consumer.cpp:103 #5 0x00007ffff32383c9 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/libQt5Core.so.5 #6 0x00007ffff71f91d6 in KActivities::ActivitiesCache::currentActivityChanged (this=0x77c900, _t1=...) at /home/bshah/aur/kactivities-git/src/build/src/lib/core/moc_activitiescache_p.cpp:353 #7 0x00007ffff71ee4f7 in KActivities::ActivitiesCache::setCurrentActivity (this=0x77c900, activity=...) at /home/bshah/aur/kactivities-git/src/kactivities/src/lib/core/activitiescache_p.cpp:297 ``` I hit this crash when creating recent media backend for pmc. First backendsmodel is initalized which in turn loads the recentmedia backend and hence creates the activity consumer first. Afterwards when signal is connected it calls currentActivityChanged slot and fails to set containment on null view. Diffs ----- shell/standaloneappcorona.cpp efa5c91 Diff: https://git.reviewboard.kde.org/r/123494/diff/ Testing ------- works fine Thanks, Bhushan Shah --===============2310056833087123252== MIME-Version: 1.0 Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: 8bit
This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/123494/

This change has been marked as submitted.


Review request for Plasma, Ivan Čukić and Marco Martin.
By Bhushan Shah.

Updated April 25, 2015, 2:09 p.m.

Changes

Submitted with commit 317421fd23eabd17d84320a31552c40ccd45a778 by Bhushan Shah to branch master.
Repository: plasma-workspace

Description

This avoids the crash situation where something have created the activity consumer earlier and currentActivityChanged signal is emitted before view is created.

#0  PlasmaQuick::View::setContainment (this=0x0, cont=0x16a9fc0) at /home/bshah/aur/plasma-framework-git/src/plasma-framework/src/plasmaquick/view.cpp:243
#1  0x0000000000462097 in StandaloneAppCorona::currentActivityChanged (this=0x7772a0, newActivity=...)
    at /home/bshah/aur/plasma-workspace-git/src/plasma-workspace/shell/standaloneappcorona.cpp:192
#2  0x00007ffff32383c9 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/libQt5Core.so.5
#3  0x00007ffff71f9763 in KActivities::Consumer::currentActivityChanged (this=0x741aa0, _t1=...) at /home/bshah/aur/kactivities-git/src/build/src/lib/core/moc_consumer.cpp:216
#4  0x00007ffff71f94dd in KActivities::Consumer::qt_static_metacall (_o=0x741aa0, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0x7fffffffa570)
    at /home/bshah/aur/kactivities-git/src/build/src/lib/core/moc_consumer.cpp:103
#5  0x00007ffff32383c9 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/libQt5Core.so.5
#6  0x00007ffff71f91d6 in KActivities::ActivitiesCache::currentActivityChanged (this=0x77c900, _t1=...) at /home/bshah/aur/kactivities-git/src/build/src/lib/core/moc_activitiescache_p.cpp:353
#7  0x00007ffff71ee4f7 in KActivities::ActivitiesCache::setCurrentActivity (this=0x77c900, activity=...)
    at /home/bshah/aur/kactivities-git/src/kactivities/src/lib/core/activitiescache_p.cpp:297

I hit this crash when creating recent media backend for pmc. First backendsmodel is initalized which in turn loads the recentmedia backend and hence creates the activity consumer first. Afterwards when signal is connected it calls currentActivityChanged slot and fails to set containment on null view.

Testing

works fine

Diffs

  • shell/standaloneappcorona.cpp (efa5c91)

View Diff

--===============2310056833087123252==-- --===============1574628603209572118== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KUGxhc21hLWRl dmVsIG1haWxpbmcgbGlzdApQbGFzbWEtZGV2ZWxAa2RlLm9yZwpodHRwczovL21haWwua2RlLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL3BsYXNtYS1kZXZlbAo= --===============1574628603209572118==--