Merge lp:~3v1n0/unity/accelerators-controller-trigger-fix into lp:unity

Proposed by Marco Trevisan (Treviño)
Status: Merged
Approved by: Andrea Azzarone
Approved revision: no longer in the source branch.
Merged at revision: 4160
Proposed branch: lp:~3v1n0/unity/accelerators-controller-trigger-fix
Merge into: lp:unity
Prerequisite: lp:~azzar1/unity/fix-crash-acc-controller
Diff against target: 30 lines (+15/-5)
1 file modified
lockscreen/LockScreenAcceleratorController.cpp (+15/-5)
To merge this branch: bzr merge lp:~3v1n0/unity/accelerators-controller-trigger-fix
Reviewer Review Type Date Requested Status
Andrea Azzarone (community) Approve
Review via email: mp+301146@code.launchpad.net

Commit message

LockScreenAcceleratorController: ensure callbacks are valid before calling them

To post a comment you must log in.
Revision history for this message
Andrea Azzarone (azzar1) wrote :

-1

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'lockscreen/LockScreenAcceleratorController.cpp'
--- lockscreen/LockScreenAcceleratorController.cpp 2016-07-26 09:23:27 +0000
+++ lockscreen/LockScreenAcceleratorController.cpp 2016-07-26 09:23:27 +0000
@@ -193,11 +193,21 @@
193193
194 CompOption::Vector options;194 CompOption::Vector options;
195195
196 if (action.initiate() && action.state() & CompAction::StateInitKey)196 if (action.state() & CompAction::StateInitKey)
197 action.initiate()(&action, 0, options);197 {
198198 auto const& initiate_cb = action.initiate();
199 if (action.terminate() && action.state() & CompAction::StateTermKey)199
200 action.terminate()(&action, CompAction::StateTermTapped, options);200 if (!initiate_cb.empty())
201 initiate_cb(&action, 0, options);
202 }
203
204 if (action.state() & CompAction::StateTermKey)
205 {
206 auto const& terminate_cb = action.terminate();
207
208 if (!terminate_cb.empty())
209 terminate_cb(&action, CompAction::StateTermTapped, options);
210 }
201}211}
202212
203Accelerators::Ptr const& AcceleratorController::GetAccelerators() const213Accelerators::Ptr const& AcceleratorController::GetAccelerators() const