=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/mandoc/cgi.c,v retrieving revision 1.113 retrieving revision 1.114 diff -c -r1.113 -r1.114 *** src/usr.bin/mandoc/cgi.c 2021/05/01 16:11:17 1.113 --- src/usr.bin/mandoc/cgi.c 2021/08/19 15:21:32 1.114 *************** *** 1,6 **** ! /* $OpenBSD: cgi.c,v 1.113 2021/05/01 16:11:17 visa Exp $ */ /* ! * Copyright (c) 2014-2019 Ingo Schwarze * Copyright (c) 2011, 2012 Kristaps Dzonsons * * Permission to use, copy, modify, and distribute this software for any --- 1,6 ---- ! /* $OpenBSD: cgi.c,v 1.114 2021/08/19 15:21:32 schwarze Exp $ */ /* ! * Copyright (c) 2014-2019, 2021 Ingo Schwarze * Copyright (c) 2011, 2012 Kristaps Dzonsons * * Permission to use, copy, modify, and distribute this software for any *************** *** 366,372 **** static void resp_begin_html(int code, const char *msg, const char *file) { ! char *cp; resp_begin_http(code, msg); --- 366,373 ---- static void resp_begin_html(int code, const char *msg, const char *file) { ! const char *name, *sec, *cp; ! int namesz, secsz; resp_begin_http(code, msg); *************** *** 381,392 **** " ", CSS_DIR); if (file != NULL) { ! if ((cp = strrchr(file, '/')) != NULL) ! file = cp + 1; ! if ((cp = strrchr(file, '.')) != NULL) { ! printf("%.*s(%s) - ", (int)(cp - file), file, cp + 1); ! } else ! printf("%s - ", file); } printf("%s\n" "\n" --- 382,408 ---- " ", CSS_DIR); if (file != NULL) { ! cp = strrchr(file, '/'); ! name = cp == NULL ? file : cp + 1; ! cp = strrchr(name, '.'); ! namesz = cp == NULL ? strlen(name) : cp - name; ! sec = NULL; ! if (cp != NULL && cp[1] != '0') { ! sec = cp + 1; ! secsz = strlen(sec); ! } else if (name - file > 1) { ! for (cp = name - 2; cp >= file; cp--) { ! if (*cp < '1' || *cp > '9') ! continue; ! sec = cp; ! secsz = name - cp - 1; ! break; ! } ! } ! printf("%.*s", namesz, name); ! if (sec != NULL) ! printf("(%.*s)", secsz, sec); ! fputs(" - ", stdout); } printf("%s\n" "\n"