summaryrefslogtreecommitdiff
path: root/src/Makefile.am
diff options
context:
space:
mode:
authorColin Watson <cjwatson@debian.org>2011-01-10 20:08:22 +0000
committerColin Watson <cjwatson@debian.org>2011-01-10 20:08:22 +0000
commite2c06f5399700d43261b396dcd8c526aca4fdd08 (patch)
treecd453be57fbcef8511393b2361f01741a41a5b30 /src/Makefile.am
parent6124c25e8749246d1212e0c68335061d3668df98 (diff)
If mandb sees that A is a symlink to B, it should never store a
whatis reference for B (Debian bug #204249). * src/check_mandirs.c (whatis_hashtable_free): New function. (test_manfile): Change whatis_hash free function to whatis_hashtable_free. Fetch an ult_trace structure from ult_src, record it in whatis_hash in the case of a cache miss, and pass it to store_descriptions. * src/descriptions_store.c (is_prefix): New function. (store_descriptions): Add path and trace parameters. Update all callers. * src/descriptions.h (store_descriptions): Update prototype. Count a match for any name in the provided ult_trace structure as indicating that we shouldn't create a whatis reference. If a name matches a trace entry outside the current manual hierarchy, skip that name entirely. * src/ult_src.c (ult_trace, free_ult_trace): New functions. (ult_src): Add trace parameter. Record each file name we encounter in the trace. Update all callers. * src/ult_src.h (ult_src): Update prototype. (free_ult_trace): Add prototype. * src/Makefile.am (lexgrog_SOURCES): Add filenames.c and filenames.h. * src/tests/mandb-2: Test two-level symlinks. * src/tests/mandb-4: New file. * src/tests/Makefile.am (ALL_TESTS): Add mandb-4.
Diffstat (limited to 'src/Makefile.am')
-rw-r--r--src/Makefile.am5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/Makefile.am b/src/Makefile.am
index c7777c08..5460fd93 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -1,7 +1,8 @@
## Process this file with automake to produce Makefile.in
##
## Copyright (C) 1994, 1995 Graeme Wilford.
-## Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 Colin Watson.
+## Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
+## 2011 Colin Watson.
##
## This file is part of man-db.
##
@@ -80,6 +81,8 @@ lexgrog_SOURCES = \
compression.c \
descriptions.c \
descriptions.h \
+ filenames.c \
+ filenames.h \
lexgrog.l \
lexgrog_test.c \
manconv.c \