Merge lp:~phablet-team/media-hub/use-transact-method into lp:media-hub

Proposed by Ricardo Mendoza
Status: Merged
Approved by: Ricardo Mendoza
Approved revision: 130
Merged at revision: 127
Proposed branch: lp:~phablet-team/media-hub/use-transact-method
Merge into: lp:media-hub
Prerequisite: lp:~jhodapp/media-hub/fix-zero-position-while-seeking
Diff against target: 83 lines (+9/-9)
1 file modified
src/core/media/player_stub.cpp (+9/-9)
To merge this branch: bzr merge lp:~phablet-team/media-hub/use-transact-method
Reviewer Review Type Date Requested Status
PS Jenkins bot continuous-integration Approve
Ubuntu Phablet Team Pending
Review via email: mp+253062@code.launchpad.net

Commit message

Migrate all Player DBus methods to use transact_method() instead of invoke_method_synchronously(), to prevent bus executor deadlocks.

To post a comment you must log in.
128. By Ricardo Mendoza

Merge reqs

129. By Ricardo Mendoza

Merge req

130. By Ricardo Mendoza

Fix req

Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'src/core/media/player_stub.cpp'
2--- src/core/media/player_stub.cpp 2015-03-16 15:44:12 +0000
3+++ src/core/media/player_stub.cpp 2015-03-16 15:44:12 +0000
4@@ -236,7 +236,7 @@
5
6 bool media::PlayerStub::open_uri(const media::Track::UriType& uri)
7 {
8- auto op = d->object->invoke_method_synchronously<mpris::Player::OpenUri, bool>(uri);
9+ auto op = d->object->transact_method<mpris::Player::OpenUri, bool>(uri);
10
11 return op.value();
12 }
13@@ -244,14 +244,14 @@
14
15 bool media::PlayerStub::open_uri(const Track::UriType& uri, const Player::HeadersType& headers)
16 {
17- auto op = d->object->invoke_method_synchronously<mpris::Player::OpenUriExtended, bool>(uri, headers);
18+ auto op = d->object->transact_method<mpris::Player::OpenUriExtended, bool>(uri, headers);
19
20 return op.value();
21 }
22
23 media::video::Sink::Ptr media::PlayerStub::create_gl_texture_video_sink(std::uint32_t texture_id)
24 {
25- auto op = d->object->invoke_method_synchronously<mpris::Player::CreateVideoSink, void>(texture_id);
26+ auto op = d->object->transact_method<mpris::Player::CreateVideoSink, void>(texture_id);
27
28 if (op.is_error())
29 {
30@@ -266,7 +266,7 @@
31
32 void media::PlayerStub::next()
33 {
34- auto op = d->object->invoke_method_synchronously<mpris::Player::Next, void>();
35+ auto op = d->object->transact_method<mpris::Player::Next, void>();
36
37 if (op.is_error())
38 throw std::runtime_error("Problem switching to next track on remote object");
39@@ -274,7 +274,7 @@
40
41 void media::PlayerStub::previous()
42 {
43- auto op = d->object->invoke_method_synchronously<mpris::Player::Previous, void>();
44+ auto op = d->object->transact_method<mpris::Player::Previous, void>();
45
46 if (op.is_error())
47 throw std::runtime_error("Problem switching to previous track on remote object");
48@@ -282,7 +282,7 @@
49
50 void media::PlayerStub::play()
51 {
52- auto op = d->object->invoke_method_synchronously<mpris::Player::Play, void>();
53+ auto op = d->object->transact_method<mpris::Player::Play, void>();
54
55 if (op.is_error())
56 throw std::runtime_error("Problem starting playback on remote object");
57@@ -290,7 +290,7 @@
58
59 void media::PlayerStub::pause()
60 {
61- auto op = d->object->invoke_method_synchronously<mpris::Player::Pause, void>();
62+ auto op = d->object->transact_method<mpris::Player::Pause, void>();
63
64 if (op.is_error())
65 throw std::runtime_error("Problem pausing playback on remote object");
66@@ -298,7 +298,7 @@
67
68 void media::PlayerStub::seek_to(const std::chrono::microseconds& offset)
69 {
70- auto op = d->object->invoke_method_synchronously<mpris::Player::Seek, void, uint64_t>(offset.count());
71+ auto op = d->object->transact_method<mpris::Player::Seek, void, uint64_t>(offset.count());
72
73 if (op.is_error())
74 throw std::runtime_error("Problem seeking on remote object");
75@@ -306,7 +306,7 @@
76
77 void media::PlayerStub::stop()
78 {
79- auto op = d->object->invoke_method_synchronously<mpris::Player::Stop, void>();
80+ auto op = d->object->transact_method<mpris::Player::Stop, void>();
81
82 if (op.is_error())
83 throw std::runtime_error("Problem stopping playback on remote object");

Subscribers

People subscribed via source and target branches

to all changes: