dcavalca / rpms / systemd

Forked from rpms/systemd 2 years ago
Clone
Zbigniew Jędrzejewski-Szmek a52f67
From d6cb5d101b096d5a8115d8861b18ac1808a5420e Mon Sep 17 00:00:00 2001
Zbigniew Jędrzejewski-Szmek b12ff7
From: Djalal Harouni <tixxdz@opendz.org>
Zbigniew Jędrzejewski-Szmek b12ff7
Date: Thu, 12 Dec 2013 00:22:48 +0100
Zbigniew Jędrzejewski-Szmek b12ff7
Subject: [PATCH] journal: pipe journalctl help output into a pager
Zbigniew Jędrzejewski-Szmek b12ff7
Zbigniew Jędrzejewski-Szmek b12ff7
journalctl help output might run off the screen, so be consistent
Zbigniew Jędrzejewski-Szmek b12ff7
as other systemd tools do and pipe it into a pager.
Zbigniew Jędrzejewski-Szmek a52f67
Zbigniew Jędrzejewski-Szmek a52f67
(cherry picked from commit faf5077f891aa249270b2a3d9f0104c3eec02da6)
Zbigniew Jędrzejewski-Szmek b12ff7
---
Zbigniew Jędrzejewski-Szmek b12ff7
 src/journal/journalctl.c | 14 ++++++++++++--
Zbigniew Jędrzejewski-Szmek b12ff7
 1 file changed, 12 insertions(+), 2 deletions(-)
Zbigniew Jędrzejewski-Szmek b12ff7
Zbigniew Jędrzejewski-Szmek b12ff7
diff --git a/src/journal/journalctl.c b/src/journal/journalctl.c
Zbigniew Jędrzejewski-Szmek b12ff7
index a5c4779..71e28b0 100644
Zbigniew Jędrzejewski-Szmek b12ff7
--- a/src/journal/journalctl.c
Zbigniew Jędrzejewski-Szmek b12ff7
+++ b/src/journal/journalctl.c
Zbigniew Jędrzejewski-Szmek b12ff7
@@ -114,8 +114,18 @@ typedef struct boot_id_t {
Zbigniew Jędrzejewski-Szmek b12ff7
         uint64_t last;
Zbigniew Jędrzejewski-Szmek b12ff7
 } boot_id_t;
Zbigniew Jędrzejewski-Szmek b12ff7
 
Zbigniew Jędrzejewski-Szmek b12ff7
+static void pager_open_if_enabled(void) {
Zbigniew Jędrzejewski-Szmek b12ff7
+
Zbigniew Jędrzejewski-Szmek b12ff7
+        if (arg_no_pager)
Zbigniew Jędrzejewski-Szmek b12ff7
+                return;
Zbigniew Jędrzejewski-Szmek b12ff7
+
Zbigniew Jędrzejewski-Szmek b12ff7
+        pager_open(arg_pager_end);
Zbigniew Jędrzejewski-Szmek b12ff7
+}
Zbigniew Jędrzejewski-Szmek b12ff7
+
Zbigniew Jędrzejewski-Szmek b12ff7
 static int help(void) {
Zbigniew Jędrzejewski-Szmek b12ff7
 
Zbigniew Jędrzejewski-Szmek b12ff7
+        pager_open_if_enabled();
Zbigniew Jędrzejewski-Szmek b12ff7
+
Zbigniew Jędrzejewski-Szmek b12ff7
         printf("%s [OPTIONS...] [MATCHES...]\n\n"
Zbigniew Jędrzejewski-Szmek b12ff7
                "Query the journal.\n\n"
Zbigniew Jędrzejewski-Szmek b12ff7
                "Flags:\n"
Zbigniew Jędrzejewski-Szmek b12ff7
@@ -1635,8 +1645,8 @@ int main(int argc, char *argv[]) {
Zbigniew Jędrzejewski-Szmek b12ff7
                 return EXIT_FAILURE;
Zbigniew Jędrzejewski-Szmek b12ff7
         }
Zbigniew Jędrzejewski-Szmek b12ff7
 
Zbigniew Jędrzejewski-Szmek b12ff7
-        if (!arg_no_pager && !arg_follow)
Zbigniew Jędrzejewski-Szmek b12ff7
-                pager_open(arg_pager_end);
Zbigniew Jędrzejewski-Szmek b12ff7
+        if (!arg_follow)
Zbigniew Jędrzejewski-Szmek b12ff7
+                pager_open_if_enabled();
Zbigniew Jędrzejewski-Szmek b12ff7
 
Zbigniew Jędrzejewski-Szmek b12ff7
         if (!arg_quiet) {
Zbigniew Jędrzejewski-Szmek b12ff7
                 usec_t start, end;