connection: don't send DEAD-NOTIFICATIONS on sync SENDs
authorDavid Herrmann <dh.herrmann@gmail.com>
Thu, 23 Oct 2014 10:20:06 +0000 (12:20 +0200)
committerDavid Herrmann <dh.herrmann@gmail.com>
Thu, 23 Oct 2014 10:20:06 +0000 (12:20 +0200)
If we synchronously send messages, we never queue notifications on the
sender if a timeout or reset occurs. Fix the DEAD_DESTINATION handling to
not queue such messages either.

Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
connection.c

index 52c4d9b76b179e78f962d6261806551f766e3507..60a38410d95230a043b79197abbfbd4285de969c 100644 (file)
@@ -251,11 +251,10 @@ int kdbus_cmd_msg_recv(struct kdbus_conn *conn,
                        } else {
                                list_del_init(&entry->reply->entry);
                                kdbus_conn_reply_free(entry->reply);
+                               kdbus_notify_reply_dead(conn->bus,
+                                                       entry->src_id,
+                                                       entry->cookie);
                        }
-
-                       kdbus_notify_reply_dead(conn->bus,
-                                               entry->src_id,
-                                               entry->cookie);
                }
 
                kdbus_queue_entry_remove(conn, entry);