These patches deal with how the man page to show is selected amongst multiple available ones. This not only addresses the issues pointed out in #9868, but also fixes the issue where localized manpages (in /usr/share/man/$some_locale_value) are prioritized over the default man pages. Fixes #9868 until a new upstream release. Closes #13125. Also: change template to make xlint happy Closes: #23108 [via git-merge-pr]
67 lines
2.1 KiB
Diff
67 lines
2.1 KiB
Diff
Log Message:
|
|
-----------
|
|
Enter dangling .so links into the database, to avoid harassing
|
|
users of man(1) about running makewhatis(8), which won't help.
|
|
Seeing the content of the broken .so request might even help
|
|
users to figure out how to access the manual page they want.
|
|
|
|
Fixing the last issue reported by Lorenzo Beretta <loreb at github>
|
|
as part of https://github.com/void-linux/void-packages/issues/9868 .
|
|
|
|
Modified Files:
|
|
--------------
|
|
mandoc:
|
|
mandocdb.c
|
|
|
|
Revision Data
|
|
-------------
|
|
Index: mandocdb.c
|
|
===================================================================
|
|
RCS file: /home/cvs/mandoc/mandoc/mandocdb.c,v
|
|
retrieving revision 1.262
|
|
retrieving revision 1.263
|
|
diff -Lmandocdb.c -Lmandocdb.c -u -p -r1.262 -r1.263
|
|
--- mandocdb.c
|
|
+++ mandocdb.c
|
|
@@ -1,7 +1,7 @@
|
|
/* $Id$ */
|
|
/*
|
|
* Copyright (c) 2011, 2012 Kristaps Dzonsons <kristaps@bsd.lv>
|
|
- * Copyright (c) 2011-2018 Ingo Schwarze <schwarze@openbsd.org>
|
|
+ * Copyright (c) 2011-2019 Ingo Schwarze <schwarze@openbsd.org>
|
|
* Copyright (c) 2016 Ed Maste <emaste@freebsd.org>
|
|
*
|
|
* Permission to use, copy, modify, and distribute this software for any
|
|
@@ -1186,9 +1186,11 @@ mpages_merge(struct dba *dba, struct mpa
|
|
mlink->next = mlink_dest->next;
|
|
mlink_dest->next = mpage->mlinks;
|
|
mpage->mlinks = NULL;
|
|
+ goto nextpage;
|
|
}
|
|
- goto nextpage;
|
|
- } else if (meta != NULL && meta->macroset == MACROSET_MDOC) {
|
|
+ meta->macroset = MACROSET_NONE;
|
|
+ }
|
|
+ if (meta != NULL && meta->macroset == MACROSET_MDOC) {
|
|
mpage->form = FORM_SRC;
|
|
mpage->sec = meta->msec;
|
|
mpage->sec = mandoc_strdup(
|
|
@@ -1208,12 +1210,15 @@ mpages_merge(struct dba *dba, struct mpa
|
|
}
|
|
|
|
assert(mpage->desc == NULL);
|
|
- if (meta == NULL) {
|
|
- mpage->form = FORM_CAT;
|
|
+ if (meta == NULL || meta->sodest != NULL) {
|
|
mpage->sec = mandoc_strdup(mlink->dsec);
|
|
mpage->arch = mandoc_strdup(mlink->arch);
|
|
mpage->title = mandoc_strdup(mlink->name);
|
|
- parse_cat(mpage, fd);
|
|
+ if (meta == NULL) {
|
|
+ mpage->form = FORM_CAT;
|
|
+ parse_cat(mpage, fd);
|
|
+ } else
|
|
+ mpage->form = FORM_SRC;
|
|
} else if (meta->macroset == MACROSET_MDOC)
|
|
parse_mdoc(mpage, meta, meta->first);
|
|
else
|