The signature of the JobRemoved signal recently changed in systemd, when
a new "unit" parameter was added. This commit changes the JobManager to
include this parameter in its JobRemoved handler and thereby avoids
segmentation faults caused by assuming fourth parameter is a JobManager
object.
static void job_manager_job_removed (SystemdManager *systemd_manager,
guint id,
const gchar *job_name,
+ const gchar *unit,
const gchar *result,
JobManager *job_manager);
static JobManagerJob *job_manager_job_new (JobManager *manager,
job_manager_job_removed (SystemdManager *systemd_manager,
guint id,
const gchar *job_name,
+ const gchar *unit,
const gchar *result,
JobManager *job_manager)
{
g_return_if_fail (IS_SYSTEMD_MANAGER (systemd_manager));
g_return_if_fail (job_name != NULL && *job_name != '\0');
g_return_if_fail (result != NULL && *result != '\0');
+ g_return_if_fail (unit != NULL && *unit != '\0');
g_return_if_fail (IS_JOB_MANAGER (job_manager));
/* look up the remembered job for this job name */