gdbus: Fix not calling disconnect function

If daemon gets disconnected from D-Bus sender is NULL. Watches that
was explicitly added with NULL sender (ie disconnected_signal in
g_dbus_set_disconnect_function) should be called anyway.
diff --git a/gdbus/watch.c b/gdbus/watch.c
index 0d0054c..b60f650 100644
--- a/gdbus/watch.c
+++ b/gdbus/watch.c
@@ -523,9 +523,7 @@
 	member = dbus_message_get_member(message);
 	dbus_message_get_args(message, NULL, DBUS_TYPE_STRING, &arg, DBUS_TYPE_INVALID);
 
-	/* Sender is always the owner */
-	if (sender == NULL)
-		return DBUS_HANDLER_RESULT_NOT_YET_HANDLED;
+	/* If sender != NULL it is always the owner */
 
 	for (current = listeners; current != NULL; current = current->next) {
 		data = current->data;
@@ -533,6 +531,9 @@
 		if (connection != data->connection)
 			continue;
 
+		if (!sender && data->owner)
+			continue;
+
 		if (data->owner && g_str_equal(sender, data->owner) == FALSE)
 			continue;