aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/main.c
diff options
context:
space:
mode:
authorIngo Schwarze <schwarze@openbsd.org>2019-07-19 20:27:25 +0000
committerIngo Schwarze <schwarze@openbsd.org>2019-07-19 20:27:25 +0000
commitf3471bbe850e1ceab86fe35bf08aed11dfa7a465 (patch)
treed9c498f4312ec3af42cd8c2ec92a77d8c630814e /main.c
parentf5f7a82925842126c44fcb97a8c2e2f4a07d6618 (diff)
downloadmandoc-f3471bbe850e1ceab86fe35bf08aed11dfa7a465.tar.gz
mandoc-f3471bbe850e1ceab86fe35bf08aed11dfa7a465.tar.zst
mandoc-f3471bbe850e1ceab86fe35bf08aed11dfa7a465.zip
If no tags were generated at all, unlink(2) the empty tags file as
soon as the condition can be detected and do not pass it to less(1). This may happen for man(7) pages, for preformatted pages, and for very simple pages like true(1). The main benefit is that :t inside less(1) yields the clearer diagnostic message "No tags file" rather than the mildly confusing "No such tag in tags file": the latter might encourage further, futile attempts to jump to other tags. Improvement suggested by Leah Neukirchen <leah at vuxu dot org> from The Void.
Diffstat (limited to 'main.c')
-rw-r--r--main.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/main.c b/main.c
index a535023b..b11f7b51 100644
--- a/main.c
+++ b/main.c
@@ -1,4 +1,4 @@
-/* $Id: main.c,v 1.331 2019/07/15 21:41:08 schwarze Exp $ */
+/* $Id: main.c,v 1.332 2019/07/19 20:27:25 schwarze Exp $ */
/*
* Copyright (c) 2008-2012 Kristaps Dzonsons <kristaps@bsd.lv>
* Copyright (c) 2010-2012, 2014-2019 Ingo Schwarze <schwarze@openbsd.org>
@@ -1194,7 +1194,7 @@ spawn_pager(struct tag_files *tag_files)
use_ofn = 1;
#if HAVE_LESS_T
- if ((cmdlen = strlen(argv[0])) >= 4) {
+ if (*tag_files->tfn != '\0' && (cmdlen = strlen(argv[0])) >= 4) {
cp = argv[0] + cmdlen - 4;
if (strcmp(cp, "less") == 0) {
argv[argc++] = mandoc_strdup("-T");