From 3049172df6f2171ad3b7ba9248f3bd16ab9a966f Mon Sep 17 00:00:00 2001 From: Ingo Schwarze Date: Fri, 15 Apr 2016 00:37:50 +0000 Subject: If PATH_INFO contains a complete and correct path to a manual page file, for example "/OpenBSD-5.9/man2/pledge.2", no database query is needed and the file is delivered directly. But even in this case, let's parse the PATH_INFO and fill the query structure such that the search form at the top of the result page gets pre-filled with useful values. --- cgi.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/cgi.c b/cgi.c index 65ca0289..0bc4b1f4 100644 --- a/cgi.c +++ b/cgi.c @@ -1,4 +1,4 @@ -/* $Id: cgi.c,v 1.123 2016/04/15 00:14:17 schwarze Exp $ */ +/* $Id: cgi.c,v 1.124 2016/04/15 00:37:50 schwarze Exp $ */ /* * Copyright (c) 2011, 2012 Kristaps Dzonsons * Copyright (c) 2014, 2015, 2016 Ingo Schwarze @@ -1037,9 +1037,10 @@ main(void) else if (*path == '/') path++; - if (*path != '\0' && access(path, F_OK) == -1) { + if (*path != '\0') { path_parse(&req, path); - path = ""; + if (access(path, F_OK) == -1) + path = ""; } else if ((querystring = getenv("QUERY_STRING")) != NULL) http_parse(&req, querystring); -- cgit v1.2.3-56-ge451