NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

misc/47958: makewhatis.c not generating entries in whatisdb for some pages



>Number:         47958
>Category:       misc
>Synopsis:       makewhatis.c not generating entries in whatisdb for some pages
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    misc-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Mon Jun 24 09:55:00 +0000 2013
>Originator:     Robert Kovacic
>Release:        current (via minix3)
>Organization:
None
>Environment:
Minix 3.2.1 (which uses makewhatis.c, v 1.47 2009/04/02 21:39:33 apb from 
NetBSD)
>Description:
makewhatis in the above version of Minix does not create an entry in whatisdb 
for some man pages. Therefore even though these man pages exist, they will not 
appear if you use apropos to search for them. It seems that GNU man pages 
"generated by Pod" are the main culprits. The following changes to makewhatis.c 
fixed the problem for me:

880a881,897
>
>         /* Skip over lines in man pages that have been generated
>          * by Pod. This makewhatis cannot deal with it (and as
>          * a result the man page would not appear in whatis.db)
>          * Modified by Robert Kovacic, June 23 2013.
>          */
>         if (strncasecmp(buffer,
>              ".\\\" Automatically generated by Pod", 34) == 0) {
>             do {
>                 if (GetS(in, buffer, sizeof(buffer) - 1)
>                 == NULL) {
>                     free(section);
>                     return NULL;
>                 }
>             } while (strncasecmp(buffer, ".IX TITLE", 9) != 0);
>         }
> 
>How-To-Repeat:
Run makewhatis with GNU man pages "generated by Pod" (e.g. clang.1) - an entry 
will NOT be generated in the whatisdb.
>Fix:
diff result:

880a881,897
>
>         /* Skip over lines in man pages that have been generated
>          * by Pod. This makewhatis cannot deal with it (and as
>          * a result the man page would not appear in whatis.db)
>          * Modified by Robert Kovacic, June 23 2013.
>          */
>         if (strncasecmp(buffer,
>              ".\\\" Automatically generated by Pod", 34) == 0) {
>             do {
>                 if (GetS(in, buffer, sizeof(buffer) - 1)
>                 == NULL) {
>                     free(section);
>                     return NULL;
>                 }
>             } while (strncasecmp(buffer, ".IX TITLE", 9) != 0);
>         }
> 



Home | Main Index | Thread Index | Old Index