aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorIngo Schwarze <schwarze@openbsd.org>2020-03-28 16:18:43 +0000
committerIngo Schwarze <schwarze@openbsd.org>2020-03-28 16:18:43 +0000
commite5d39b82294bd2fb1536527e0f27b2902943f299 (patch)
treea77f63e060d0a0e2acf1430a855ffd199b927c81
parentc22ab73e17266245021db009cd33ef0e2437a2d1 (diff)
downloadmandoc-e5d39b82294bd2fb1536527e0f27b2902943f299.tar.gz
mandoc-e5d39b82294bd2fb1536527e0f27b2902943f299.tar.zst
mandoc-e5d39b82294bd2fb1536527e0f27b2902943f299.zip
Even though the HTML, man, markdown, PDF, PostScript, and tree formatters
never write a ctags(1) file, using a pager still requires writing the main output file and passing the file name to the pager. Recent regression mentioned on IRC and reported by kn@.
-rw-r--r--main.c23
1 files changed, 10 insertions, 13 deletions
diff --git a/main.c b/main.c
index 4228602e..486db0d0 100644
--- a/main.c
+++ b/main.c
@@ -1,4 +1,4 @@
-/* $Id: main.c,v 1.346 2020/03/19 12:21:37 schwarze Exp $ */
+/* $Id: main.c,v 1.347 2020/03/28 16:18:43 schwarze Exp $ */
/*
* Copyright (c) 2010-2012, 2014-2020 Ingo Schwarze <schwarze@openbsd.org>
* Copyright (c) 2008-2012 Kristaps Dzonsons <kristaps@bsd.lv>
@@ -609,8 +609,7 @@ main(int argc, char *argv[])
(void)fchdir(startdir);
close(startdir);
}
- if (outst.outtype <= OUTT_UTF8)
- term_tag_finish();
+ term_tag_finish();
if (outst.outdata != NULL) {
switch (outst.outtype) {
case OUTT_HTML:
@@ -832,16 +831,14 @@ process_onefile(struct mparse *mp, struct manpage *resp, int startdir,
} else
fd = STDIN_FILENO;
- if (outst->outtype <= OUTT_UTF8) {
- if (outst->use_pager) {
- outst->use_pager = 0;
- outst->tag_files = term_tag_init(conf->output.tag);
- }
- if (outst->had_output) {
- if (outst->outdata == NULL)
- outdata_alloc(outst, &conf->output);
- terminal_sepline(outst->outdata);
- }
+ if (outst->use_pager) {
+ outst->use_pager = 0;
+ outst->tag_files = term_tag_init(conf->output.tag);
+ }
+ if (outst->had_output && outst->outtype <= OUTT_UTF8) {
+ if (outst->outdata == NULL)
+ outdata_alloc(outst, &conf->output);
+ terminal_sepline(outst->outdata);
}
if (resp->form == FORM_SRC)