8ee3d8c97a
svn path=/nixpkgs/trunk/; revision=7593
114 lines
3.3 KiB
Diff
114 lines
3.3 KiB
Diff
diff -rc man-db-2.4.3/src/manp.c man-db-2.4.3-new/src/manp.c
|
|
*** man-db-2.4.3/src/manp.c Mon Nov 8 10:06:03 2004
|
|
--- man-db-2.4.3-new/src/manp.c Tue Jan 9 17:08:31 2007
|
|
***************
|
|
*** 101,107 ****
|
|
|
|
static void mkcatdirs (const char *mandir, const char *catdir);
|
|
static __inline__ char *get_manpath (char *path);
|
|
! static __inline__ char *has_mandir (const char *p);
|
|
static __inline__ char *fsstnd (const char *path);
|
|
static char *def_path (int flag);
|
|
static void add_dir_to_list (char **lp, const char *dir);
|
|
--- 101,107 ----
|
|
|
|
static void mkcatdirs (const char *mandir, const char *catdir);
|
|
static __inline__ char *get_manpath (char *path);
|
|
! static __inline__ char *has_mandir (const char *p, const char *mandir);
|
|
static __inline__ char *fsstnd (const char *path);
|
|
static char *def_path (int flag);
|
|
static void add_dir_to_list (char **lp, const char *dir);
|
|
***************
|
|
*** 885,891 ****
|
|
if (debug)
|
|
fputs ("is not in the config file\n", stderr);
|
|
|
|
! t = has_mandir (p);
|
|
if (t) {
|
|
if (debug)
|
|
fprintf (stderr, "but does have a ../man or man subdirectory\n");
|
|
--- 885,891 ----
|
|
if (debug)
|
|
fputs ("is not in the config file\n", stderr);
|
|
|
|
! t = has_mandir (p, "man");
|
|
if (t) {
|
|
if (debug)
|
|
fprintf (stderr, "but does have a ../man or man subdirectory\n");
|
|
***************
|
|
*** 895,900 ****
|
|
--- 895,911 ----
|
|
} else
|
|
if (debug)
|
|
fprintf (stderr, "and doesn't have ../man or man subdirectories\n");
|
|
+
|
|
+ t = has_mandir (p, "share/man");
|
|
+ if (t) {
|
|
+ if (debug)
|
|
+ fprintf (stderr, "but does have a ../share/man or share/man subdirectory\n");
|
|
+
|
|
+ add_dir_to_list (tmplist, t);
|
|
+ free (t);
|
|
+ }
|
|
+ if (debug)
|
|
+ fprintf (stderr, "and doesn't have ../share/man or share/man subdirectories\n");
|
|
}
|
|
}
|
|
|
|
***************
|
|
*** 973,979 ****
|
|
|
|
/* path does not exist in config file: check to see if path/../man or
|
|
path/man exist. If so return it, if not return NULL. */
|
|
! static __inline__ char *has_mandir (const char *path)
|
|
{
|
|
char *newpath = NULL;
|
|
|
|
--- 984,990 ----
|
|
|
|
/* path does not exist in config file: check to see if path/../man or
|
|
path/man exist. If so return it, if not return NULL. */
|
|
! static __inline__ char *has_mandir (const char *path, const char *mandir)
|
|
{
|
|
char *newpath = NULL;
|
|
|
|
***************
|
|
*** 983,991 ****
|
|
char *subdir = strrchr (path, '/');
|
|
if (subdir) {
|
|
const int prefix_len = subdir + 1 - path;
|
|
! newpath = xmalloc (prefix_len + sizeof ("man") + 1);
|
|
strncpy (newpath, path, prefix_len);
|
|
! strcpy (newpath + prefix_len, "man");
|
|
|
|
if (is_directory (newpath) == 1)
|
|
return newpath;
|
|
--- 994,1002 ----
|
|
char *subdir = strrchr (path, '/');
|
|
if (subdir) {
|
|
const int prefix_len = subdir + 1 - path;
|
|
! newpath = xmalloc (prefix_len + strlen (mandir) + 2);
|
|
strncpy (newpath, path, prefix_len);
|
|
! strcpy (newpath + prefix_len, mandir);
|
|
|
|
if (is_directory (newpath) == 1)
|
|
return newpath;
|
|
***************
|
|
*** 993,999 ****
|
|
*newpath = '\0';
|
|
}
|
|
|
|
! newpath = strappend (newpath, path, "/man", NULL);
|
|
|
|
if (is_directory (newpath) == 1)
|
|
return newpath;
|
|
--- 1004,1010 ----
|
|
*newpath = '\0';
|
|
}
|
|
|
|
! newpath = strappend (newpath, path, "/", mandir, NULL);
|
|
|
|
if (is_directory (newpath) == 1)
|
|
return newpath;
|
|
Only in man-db-2.4.3-new/src: manp.c~
|