* Fixed a bug in the D-Bus library
* Initial conference call code * Further D-Bus API additions and fixes git-svn-id: http://dev.openwengo.org/svn/openwengo/wengophone-ng/branches/wengophone-dbus-api/libs/dbus@7973 30a43799-04e7-0310-8b2b-ea0d24f86d0e
This commit is contained in:
parent
24637001ce
commit
35702f41b3
2 changed files with 11 additions and 3 deletions
|
@ -384,7 +384,9 @@ Message& Message::operator = ( const Message& m )
|
||||||
{
|
{
|
||||||
if(&m != this)
|
if(&m != this)
|
||||||
{
|
{
|
||||||
|
dbus_message_unref(_pvt->msg);
|
||||||
_pvt = m._pvt;
|
_pvt = m._pvt;
|
||||||
|
dbus_message_ref(_pvt->msg);
|
||||||
}
|
}
|
||||||
return *this;
|
return *this;
|
||||||
}
|
}
|
||||||
|
|
|
@ -175,6 +175,11 @@ void ObjectAdaptor::_emit_signal( SignalMessage& sig )
|
||||||
conn().send(sig);
|
conn().send(sig);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
struct ReturnLaterError
|
||||||
|
{
|
||||||
|
const Tag* tag;
|
||||||
|
};
|
||||||
|
|
||||||
bool ObjectAdaptor::handle_message( const Message& msg )
|
bool ObjectAdaptor::handle_message( const Message& msg )
|
||||||
{
|
{
|
||||||
switch( msg.type() )
|
switch( msg.type() )
|
||||||
|
@ -200,9 +205,9 @@ bool ObjectAdaptor::handle_message( const Message& msg )
|
||||||
ErrorMessage em(cmsg, e.name(), e.message());
|
ErrorMessage em(cmsg, e.name(), e.message());
|
||||||
conn().send(em);
|
conn().send(em);
|
||||||
}
|
}
|
||||||
catch(Tag* tag)
|
catch(ReturnLaterError& rle)
|
||||||
{
|
{
|
||||||
_continuations[tag] = new Continuation(conn(), cmsg, tag);
|
_continuations[rle.tag] = new Continuation(conn(), cmsg, rle.tag);
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -220,7 +225,8 @@ bool ObjectAdaptor::handle_message( const Message& msg )
|
||||||
|
|
||||||
void ObjectAdaptor::return_later( const Tag* tag )
|
void ObjectAdaptor::return_later( const Tag* tag )
|
||||||
{
|
{
|
||||||
throw tag;
|
ReturnLaterError rle = { tag };
|
||||||
|
throw rle;
|
||||||
}
|
}
|
||||||
|
|
||||||
void ObjectAdaptor::return_now( Continuation* ret )
|
void ObjectAdaptor::return_now( Continuation* ret )
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue