Merge lp://qastaging/~vanvugt/mir/fix-1151645 into lp://qastaging/~mir-team/mir/trunk
Status: | Merged |
---|---|
Approved by: | Robert Carr |
Approved revision: | no longer in the source branch. |
Merged at revision: | 478 |
Proposed branch: | lp://qastaging/~vanvugt/mir/fix-1151645 |
Merge into: | lp://qastaging/~mir-team/mir/trunk |
Diff against target: |
216 lines (+135/-6) 4 files modified
src/client/mir_wait_handle.cpp (+16/-5) src/client/mir_wait_handle.h (+4/-1) tests/unit-tests/client/CMakeLists.txt (+1/-0) tests/unit-tests/client/test_wait_handle.cpp (+114/-0) |
To merge this branch: | bzr merge lp://qastaging/~vanvugt/mir/fix-1151645 |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Robert Carr (community) | Approve | ||
Alan Griffiths | Approve | ||
PS Jenkins bot (community) | continuous-integration | Approve | |
Review via email:
|
Commit message
MirWaitHandle: Add expect_result() method and some unit tests to fix
LP: #1151645.
expect_result() is required to support asymmetric usage patterns of a
MirWaitHandle like:
mir_foo(x, A);
mir_foo(x, B);
mir_
where mir_foo always reuses the same MirWaitHandle for x.
Previously, mir_wait_for would return as soon as any call to mir_foo finished,
meaning only A or B had completed. But clearly what we want is to wait for C.
That is what expect_result allows us to support as re-usable client functions like
mir_foo are added.
Description of the change
If this looks incomplete, that's because the bigger picture with real-world use case and integration test (mir_surface_
lp:~vanvugt/mir/surface-types
PASSED: Continuous integration, rev:474 jenkins. qa.ubuntu. com/job/ mir-ci/ 8/ jenkins. qa.ubuntu. com/job/ mir-quantal- amd64-ci/ 8//console
http://
Executed test runs:
SUCCESS: http://
Click here to trigger a rebuild: jenkins. qa.ubuntu. com/job/ mir-ci/ 8//rebuild/?
http://