systemd/0042-shared-fix-search_and_...

30 lines
1.1 KiB
Diff

From 695c8554ca6a64f749de265ba29566d3c95fe77c Mon Sep 17 00:00:00 2001
From: Michael Marineau <michael.marineau@coreos.com>
Date: Thu, 19 Jun 2014 19:07:06 -0700
Subject: [PATCH] shared: fix search_and_fopen with alternate roots
Update for the current behavior of path_strv_resolve which now returns
paths relative to the given root, not the full absolute paths.
(cherry picked from commit 375eadd911a9f83f89f1e7de5e05f44cc81e3642)
---
src/shared/util.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/src/shared/util.c b/src/shared/util.c
index 02cfd499..6165d72d 100644
--- a/src/shared/util.c
+++ b/src/shared/util.c
@@ -5682,7 +5682,10 @@ static int search_and_fopen_internal(const char *path, const char *mode, const c
_cleanup_free_ char *p = NULL;
FILE *f;
- p = strjoin(*i, "/", path, NULL);
+ if (root)
+ p = strjoin(root, *i, "/", path, NULL);
+ else
+ p = strjoin(*i, "/", path, NULL);
if (!p)
return -ENOMEM;