When a DBus name is released, NameOwnerChanged signal contains an empty string
as new_owner. Commit
bbc2908 changed interpretation of the empty string to a
valid name, which is not consistent with values that are sent by dbus-daemon.
As a side effect, this masks symptoms of systemd-logind dbus disconnections
(#2925) by completely restarting it so it can freshly reconnect to dbus.
return 0;
}
+ old_owner = isempty(old_owner) ? NULL : old_owner;
+ new_owner = isempty(new_owner) ? NULL : new_owner;
+
if (UNIT_VTABLE(u)->bus_name_owner_change)
UNIT_VTABLE(u)->bus_name_owner_change(u, name, old_owner, new_owner);