summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/journal/journalctl.c15
1 files changed, 10 insertions, 5 deletions
diff --git a/src/journal/journalctl.c b/src/journal/journalctl.c
index 3ae6482e99..c96d68dd4c 100644
--- a/src/journal/journalctl.c
+++ b/src/journal/journalctl.c
@@ -1032,11 +1032,16 @@ int main(int argc, char *argv[]) {
arg_action == ACTION_LIST_CATALOG ||
arg_action == ACTION_DUMP_CATALOG) {
- char _cleanup_free_ *database;
- database = strjoin(arg_root, "/", CATALOG_DATABASE, NULL);
- if (!database) {
- r = log_oom();
- goto finish;
+ const char* database = CATALOG_DATABASE;
+ char _cleanup_free_ *copy = NULL;
+ if (arg_root) {
+ copy = strjoin(arg_root, "/", CATALOG_DATABASE, NULL);
+ if (!database) {
+ r = log_oom();
+ goto finish;
+ }
+ path_kill_slashes(copy);
+ database = copy;
}
if (arg_action == ACTION_UPDATE_CATALOG) {