Module Name:    src
Committed By:   wiz
Date:           Sun Apr 15 15:56:53 UTC 2012

Modified Files:
        src/usr.sbin/makemandb: apropos-utils.c apropos.c

Log Message:
Handle pages with slashes in their names better.
>From Abhinav Upadhyay in private mail.


To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 src/usr.sbin/makemandb/apropos-utils.c
cvs rdiff -u -r1.5 -r1.6 src/usr.sbin/makemandb/apropos.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/usr.sbin/makemandb/apropos-utils.c
diff -u src/usr.sbin/makemandb/apropos-utils.c:1.3 src/usr.sbin/makemandb/apropos-utils.c:1.4
--- src/usr.sbin/makemandb/apropos-utils.c:1.3	Sat Apr  7 10:44:58 2012
+++ src/usr.sbin/makemandb/apropos-utils.c	Sun Apr 15 15:56:52 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: apropos-utils.c,v 1.3 2012/04/07 10:44:58 apb Exp $	*/
+/*	$NetBSD: apropos-utils.c,v 1.4 2012/04/15 15:56:52 wiz Exp $	*/
 /*-
  * Copyright (c) 2011 Abhinav Upadhyay <er.abhinav.upadh...@gmail.com>
  * All rights reserved.
@@ -31,7 +31,7 @@
  */
 
 #include <sys/cdefs.h>
-__RCSID("$NetBSD: apropos-utils.c,v 1.3 2012/04/07 10:44:58 apb Exp $");
+__RCSID("$NetBSD: apropos-utils.c,v 1.4 2012/04/15 15:56:52 wiz Exp $");
 
 #include <sys/stat.h>
 
@@ -449,6 +449,8 @@ run_query(sqlite3 *db, const char *snipp
 	const char *name_desc;
 	const char *machine;
 	const char *snippet;
+	const char *name_temp;
+	char *slash_ptr;
 	char *m = NULL;
 	int rc;
 	inverse_document_frequency idf = {0, 0};
@@ -549,13 +551,16 @@ run_query(sqlite3 *db, const char *snipp
 
 	while (sqlite3_step(stmt) == SQLITE_ROW) {
 		section = (const char *) sqlite3_column_text(stmt, 0);
+		name_temp = (const char *) sqlite3_column_text(stmt, 1);
 		name_desc = (const char *) sqlite3_column_text(stmt, 2);
 		machine = (const char *) sqlite3_column_text(stmt, 3);
 		snippet = (const char *) sqlite3_column_text(stmt, 4);
+		if ((slash_ptr = strrchr(name_temp, '/')) != NULL)
+			name_temp = slash_ptr + 1;
 		if (machine && machine[0]) {
 			m = estrdup(machine);
 			easprintf(&name, "%s/%s", lower(m),
-				sqlite3_column_text(stmt, 1));
+				name_temp);
 			free(m);
 		} else {
 			name = estrdup((const char *) sqlite3_column_text(stmt, 1));

Index: src/usr.sbin/makemandb/apropos.c
diff -u src/usr.sbin/makemandb/apropos.c:1.5 src/usr.sbin/makemandb/apropos.c:1.6
--- src/usr.sbin/makemandb/apropos.c:1.5	Wed Feb 15 23:53:13 2012
+++ src/usr.sbin/makemandb/apropos.c	Sun Apr 15 15:56:52 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: apropos.c,v 1.5 2012/02/15 23:53:13 joerg Exp $	*/
+/*	$NetBSD: apropos.c,v 1.6 2012/04/15 15:56:52 wiz Exp $	*/
 /*-
  * Copyright (c) 2011 Abhinav Upadhyay <er.abhinav.upadh...@gmail.com>
  * All rights reserved.
@@ -31,7 +31,7 @@
  */
 
 #include <sys/cdefs.h>
-__RCSID("$NetBSD: apropos.c,v 1.5 2012/02/15 23:53:13 joerg Exp $");
+__RCSID("$NetBSD: apropos.c,v 1.6 2012/04/15 15:56:52 wiz Exp $");
 
 #include <err.h>
 #include <search.h>
@@ -216,7 +216,7 @@ query_callback(void *data, const char *s
 	callback_data *cbdata = (callback_data *) data;
 	FILE *out = cbdata->out;
 	cbdata->count++;
-	fprintf(out, "%s(%s)\t%s\n", name, section, name_desc);
+	fprintf(out, "%s (%s)\t%s\n", name, section, name_desc);
 
 	if (cbdata->aflags->no_context == 0)
 		fprintf(out, "%s\n\n", snippet);

Reply via email to