From ba3c7668a472672bd86eb06dbbbffcef17722134 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Tue, 24 Feb 2009 06:36:42 +0100 Subject: update reserve.c from upstream git --- src/modules/reserve.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/modules/reserve.c b/src/modules/reserve.c index 79ec97ac..9a9591d2 100644 --- a/src/modules/reserve.c +++ b/src/modules/reserve.c @@ -59,6 +59,8 @@ struct rd_device { static const char introspection[] = DBUS_INTROSPECT_1_0_XML_DOCTYPE_DECL_NODE "" + " \n" " " " " " " @@ -461,8 +463,17 @@ int rd_acquire( if (!(reply = dbus_connection_send_with_reply_and_block( d->connection, m, - -1, + 5000, /* 5s */ error))) { + + if (dbus_error_has_name(error, DBUS_ERROR_TIMED_OUT) || + dbus_error_has_name(error, DBUS_ERROR_UNKNOWN_METHOD) || + dbus_error_has_name(error, DBUS_ERROR_NO_REPLY)) { + /* This must be treated as denied. */ + r = -EBUSY; + goto fail; + } + r = -EIO; goto fail; } -- cgit