chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
gnome-ask-password-agent: check for vala 0.10 instead of libnotify
[elogind.git]
/
src
/
dbus-job.c
diff --git
a/src/dbus-job.c
b/src/dbus-job.c
index 16aa8d071eb18dfa3f1b4f8a5c17c5615f168dd2..908ddba5379480672f9589294a395992f800700b 100644
(file)
--- a/
src/dbus-job.c
+++ b/
src/dbus-job.c
@@
-45,9
+45,12
@@
const char bus_job_interface[] _introspect_("Job") = BUS_JOB_INTERFACE;
const char bus_job_interface[] _introspect_("Job") = BUS_JOB_INTERFACE;
+#define INTERFACES_LIST \
+ BUS_GENERIC_INTERFACES_LIST \
+ "org.freedesktop.systemd1.Job\0"
+
#define INVALIDATING_PROPERTIES \
#define INVALIDATING_PROPERTIES \
- "State\0" \
- "\0" \
+ "State\0"
static DEFINE_BUS_PROPERTY_APPEND_ENUM(bus_job_append_state, job_state, JobState);
static DEFINE_BUS_PROPERTY_APPEND_ENUM(bus_job_append_type, job_type, JobType);
static DEFINE_BUS_PROPERTY_APPEND_ENUM(bus_job_append_state, job_state, JobState);
static DEFINE_BUS_PROPERTY_APPEND_ENUM(bus_job_append_type, job_type, JobType);
@@
-97,10
+100,10
@@
static DBusHandlerResult bus_job_message_dispatch(Job *j, DBusConnection *connec
if (!(reply = dbus_message_new_method_return(message)))
goto oom;
if (!(reply = dbus_message_new_method_return(message)))
goto oom;
- job_f
ree(j
);
+ job_f
inish_and_invalidate(j, JOB_CANCELED
);
} else
} else
- return bus_default_message_handler(j->manager, connection, message, INTROSPECTION, properties);
+ return bus_default_message_handler(j->manager, connection, message, INTROSPECTION,
INTERFACES_LIST,
properties);
if (reply) {
if (!dbus_connection_send(connection, reply, NULL))
if (reply) {
if (!dbus_connection_send(connection, reply, NULL))
@@
-193,8
+196,13
@@
static DBusHandlerResult bus_job_message_handler(DBusConnection *connection, DBu
if (r == -ENOMEM)
return DBUS_HANDLER_RESULT_NEED_MEMORY;
if (r == -ENOMEM)
return DBUS_HANDLER_RESULT_NEED_MEMORY;
- if (r == -ENOENT)
- return DBUS_HANDLER_RESULT_NOT_YET_HANDLED;
+ if (r == -ENOENT) {
+ DBusError e;
+
+ dbus_error_init(&e);
+ dbus_set_error_const(&e, DBUS_ERROR_UNKNOWN_OBJECT, "Unknown job");
+ return bus_send_error_reply(m, connection, message, &e, r);
+ }
return bus_send_error_reply(m, connection, message, NULL, r);
}
return bus_send_error_reply(m, connection, message, NULL, r);
}