aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorIngo Schwarze <schwarze@openbsd.org>2016-04-15 00:14:17 +0000
committerIngo Schwarze <schwarze@openbsd.org>2016-04-15 00:14:17 +0000
commitff8805995c4600c46115ece11c83d63b9a28c1e8 (patch)
treed0af7fbd84cf3db402eb58bd2bc35380f00ea1d1
parent906ac2b1ee4c9cd4ac9b91f0ba2efaa34f9449b4 (diff)
downloadmandoc-ff8805995c4600c46115ece11c83d63b9a28c1e8.tar.gz
mandoc-ff8805995c4600c46115ece11c83d63b9a28c1e8.tar.zst
mandoc-ff8805995c4600c46115ece11c83d63b9a28c1e8.zip
omit list of other results when there is only one match
-rw-r--r--cgi.c45
1 files changed, 24 insertions, 21 deletions
diff --git a/cgi.c b/cgi.c
index 3dc21f9a..65ca0289 100644
--- a/cgi.c
+++ b/cgi.c
@@ -1,4 +1,4 @@
-/* $Id: cgi.c,v 1.122 2016/04/14 23:48:48 schwarze Exp $ */
+/* $Id: cgi.c,v 1.123 2016/04/15 00:14:17 schwarze Exp $ */
/*
* Copyright (c) 2011, 2012 Kristaps Dzonsons <kristaps@bsd.lv>
* Copyright (c) 2014, 2015, 2016 Ingo Schwarze <schwarze@usta.de>
@@ -588,34 +588,37 @@ pg_searchres(const struct req *req, struct manpage *r, size_t sz)
resp_begin_html(200, NULL);
resp_searchform(req);
- puts("<DIV CLASS=\"results\">");
- puts("<TABLE>");
- for (i = 0; i < sz; i++) {
- printf("<TR>\n"
- "<TD CLASS=\"title\">\n"
- "<A HREF=\"/%s%s%s/%s",
- scriptname, *scriptname == '\0' ? "" : "/",
- req->q.manpath, r[i].file);
- printf("\">");
- html_print(r[i].names);
- printf("</A>\n"
- "</TD>\n"
- "<TD CLASS=\"desc\">");
- html_print(r[i].output);
- puts("</TD>\n"
- "</TR>");
- }
+ if (sz > 1) {
+ puts("<DIV CLASS=\"results\">");
+ puts("<TABLE>");
- puts("</TABLE>\n"
- "</DIV>");
+ for (i = 0; i < sz; i++) {
+ printf("<TR>\n"
+ "<TD CLASS=\"title\">\n"
+ "<A HREF=\"/%s%s%s/%s",
+ scriptname, *scriptname == '\0' ? "" : "/",
+ req->q.manpath, r[i].file);
+ printf("\">");
+ html_print(r[i].names);
+ printf("</A>\n"
+ "</TD>\n"
+ "<TD CLASS=\"desc\">");
+ html_print(r[i].output);
+ puts("</TD>\n"
+ "</TR>");
+ }
+
+ puts("</TABLE>\n"
+ "</DIV>");
+ }
/*
* In man(1) mode, show one of the pages
* even if more than one is found.
*/
- if (req->q.equal) {
+ if (req->q.equal || sz == 1) {
puts("<HR>");
iuse = 0;
priouse = 20;