Author: mvidner Date: Wed Jun 17 13:53:46 2009 New Revision: 57604 URL: http://svn.opensuse.org/viewcvs/yast?rev=57604&view=rev Log: DBusServerBase: exit properly if the connection got closed Modified: trunk/core/liby2dbus/src/DBusConn.h trunk/core/liby2dbus/src/DBusServerBase.cc trunk/core/package/yast2-core.changes Modified: trunk/core/liby2dbus/src/DBusConn.h URL: http://svn.opensuse.org/viewcvs/yast/trunk/core/liby2dbus/src/DBusConn.h?rev=57604&r1=57603&r2=57604&view=diff ============================================================================== --- trunk/core/liby2dbus/src/DBusConn.h (original) +++ trunk/core/liby2dbus/src/DBusConn.h Wed Jun 17 13:53:46 2009 @@ -32,6 +32,7 @@ bool send(const DBusMsg &msg); DBusMsg call(const DBusMsg &msg); void flush(); + // it the msg is empty, there was a timeout DBusMsg receive(); DBusConnection *getConnection() const; }; Modified: trunk/core/liby2dbus/src/DBusServerBase.cc URL: http://svn.opensuse.org/viewcvs/yast/trunk/core/liby2dbus/src/DBusServerBase.cc?rev=57604&r1=57603&r2=57604&view=diff ============================================================================== --- trunk/core/liby2dbus/src/DBusServerBase.cc (original) +++ trunk/core/liby2dbus/src/DBusServerBase.cc Wed Jun 17 13:53:46 2009 @@ -124,6 +124,13 @@ // mainloop while (true) { + if (!dbus_connection_get_is_connected(connection.getConnection())) + { + y2debug ("Got disconnected"); + // otherwise receiving would call exit (!) + break; + } + // try reading a message from DBus DBusMsg request(connection.receive()); @@ -482,7 +489,7 @@ #endif } -DBusServerBase::actionList DBusServerBase::createActionId(const DBusMsg &msg) +DBusServerBase::actionList DBusServerBase::createActionId(const DBusMsg &) { y2debug("Using default empty list of action IDs"); // default implementation is empty list Modified: trunk/core/package/yast2-core.changes URL: http://svn.opensuse.org/viewcvs/yast/trunk/core/package/yast2-core.changes?rev=57604&r1=57603&r2=57604&view=diff ============================================================================== --- trunk/core/package/yast2-core.changes (original) +++ trunk/core/package/yast2-core.changes Wed Jun 17 13:53:46 2009 @@ -1,4 +1,9 @@ ------------------------------------------------------------------- +Wed Jun 17 13:53:30 CEST 2009 - mvidner@suse.cz + +- DBusServerBase: exit properly if the connection got closed + +------------------------------------------------------------------- Mon Jun 15 17:24:03 CEST 2009 - lslezak@suse.cz - DBus service - fixed returning of nested values (e.g. list<map>), -- To unsubscribe, e-mail: yast-commit+unsubscribe@opensuse.org For additional commands, e-mail: yast-commit+help@opensuse.org