summaryrefslogtreecommitdiff
path: root/bus/activation.c
diff options
context:
space:
mode:
Diffstat (limited to 'bus/activation.c')
-rw-r--r--bus/activation.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/bus/activation.c b/bus/activation.c
index 3177d023..acb2aa89 100644
--- a/bus/activation.c
+++ b/bus/activation.c
@@ -268,6 +268,7 @@ update_desktop_file_entry (BusActivation *activation,
_DBUS_ASSERT_ERROR_IS_CLEAR (error);
+ retval = FALSE;
name = NULL;
exec = NULL;
user = NULL;
@@ -427,8 +428,11 @@ update_desktop_file_entry (BusActivation *activation,
if (_dbus_hash_table_lookup_string (activation->entries, name))
{
- _dbus_verbose ("The new service name \"%s\" of service file \"%s\" already in cache, ignoring\n",
+ _dbus_verbose ("The new service name \"%s\" of service file \"%s\" is already in cache, ignoring\n",
name, _dbus_string_get_const_data (&file_path));
+ dbus_set_error (error, DBUS_ERROR_FAILED,
+ "The new service name \"%s\" of service file \"%s\" is already in cache, ignoring\n",
+ name, _dbus_string_get_const_data (&file_path));
goto out;
}
@@ -457,8 +461,7 @@ update_desktop_file_entry (BusActivation *activation,
* the entries hash table */
_dbus_hash_table_remove_string (entry->s_dir->entries,
entry->filename);
- bus_activation_entry_unref (entry);
- return FALSE;
+ goto out;
}
}
@@ -476,7 +479,7 @@ out:
if (entry)
bus_activation_entry_unref (entry);
- return FALSE;
+ return retval;
}
static dbus_bool_t