ac3a84
From b9fb1769f8b6de65abf1f57a85b0d0a22f84c754 Mon Sep 17 00:00:00 2001
ac3a84
From: David Tardon <dtardon@redhat.com>
ac3a84
Date: Tue, 21 Feb 2023 14:10:33 +0100
ac3a84
Subject: [PATCH] install: fail early if specifier expansion failed
ac3a84
ac3a84
Before:
ac3a84
ac3a84
systemd[1]: Assertion 'path' failed at src/shared/install.c:288, function install_changes_add(). Aborting.
ac3a84
systemd[1]: Caught <ABRT> from our own process.
ac3a84
systemd[1]: Caught <ABRT>, dumped core as pid 2525.
ac3a84
systemd[1]: Freezing execution
ac3a84
ac3a84
After:
ac3a84
ac3a84
Failed to enable unit: Invalid specifier in user-%J.service
ac3a84
ac3a84
Fixes #26467.
ac3a84
ac3a84
Follow-up for: f5a0162
ac3a84
ac3a84
(cherry picked from commit f8979e869812988835f6951fb73a68e30a4c608c)
ac3a84
ac3a84
Related: #2138081
ac3a84
---
ac3a84
 src/shared/install.c | 2 ++
ac3a84
 1 file changed, 2 insertions(+)
ac3a84
ac3a84
diff --git a/src/shared/install.c b/src/shared/install.c
ac3a84
index a760726628..8d4aa5ab2c 100644
ac3a84
--- a/src/shared/install.c
ac3a84
+++ b/src/shared/install.c
ac3a84
@@ -1982,6 +1982,8 @@ static int install_info_symlink_wants(
ac3a84
                         install_changes_add(changes, n_changes, q, *s, NULL);
ac3a84
                         if (r >= 0)
ac3a84
                                 r = q;
ac3a84
+
ac3a84
+                        continue;
ac3a84
                 }
ac3a84
 
ac3a84
                 if (!unit_name_is_valid(dst, valid_dst_type)) {