chiark / gitweb /
pager: don't start pager if the terminal is explicitly set to TERM=dumb
[elogind.git] / src / shared / pager.c
index 8d60f8a7a10993614f26eecb8552c1b2ea48ff17..1fdf8ed689bb821475d0731575a853241b92003c 100644 (file)
@@ -63,8 +63,8 @@ int pager_open(bool no_pager, bool jump_to_end) {
         if (pager_pid > 0)
                 return 1;
 
-        if (!on_tty())
-                        return 0;
+        if (terminal_is_dumb())
+                return 0;
 
         pager = getenv("SYSTEMD_PAGER");
         if (!pager)
@@ -158,13 +158,8 @@ void pager_close(void) {
                 return;
 
         /* Inform pager that we are done */
-#if defined(__GLIBC__)
         stdout = safe_fclose(stdout);
         stderr = safe_fclose(stderr);
-#else
-        (void) safe_fclose(stdout);
-        (void) safe_fclose(stderr);
-#endif // in musl-libc these are const
 
         (void) kill(pager_pid, SIGCONT);
         (void) wait_for_terminate(pager_pid, NULL);