]> git.pld-linux.org Git - packages/cvs.git/blame_incremental - cvs-home_etc.patch
- fix building with texinfo 5
[packages/cvs.git] / cvs-home_etc.patch
... / ...
CommitLineData
1diff -urN cvs-1.12.13.org/src/filesubr.c cvs-1.12.13/src/filesubr.c
2--- cvs-1.12.13.org/src/filesubr.c 2005-09-28 17:25:59.000000000 +0200
3+++ cvs-1.12.13/src/filesubr.c 2007-11-05 20:47:46.928468198 +0100
4@@ -832,7 +832,24 @@
5 char *
6 strcat_filename_onto_homedir (const char *dir, const char *file)
7 {
8- char *path = Xasprintf ("%s/%s", dir, file);
9+ char *path;
10+ char *cfgdir;
11+ struct stat st;
12+ int isdot = (*file == '.');
13+
14+ if ( (path = getenv("CONFIG_DIR")) && path[0] ) {
15+ cfgdir = xmalloc(strlen(dir) + 1 + strlen(path) + 1);
16+ sprintf(cfgdir, "%s/%s", dir, path);
17+ } else
18+ cfgdir = NULL;
19+ if ( cfgdir && (stat(cfgdir, &st) != -1) && S_ISDIR(st.st_mode) ) {
20+ path = Xasprintf ("%s/%s", cfgdir, file+isdot);
21+ } else {
22+ path = Xasprintf ("%s/%s", dir, file);
23+ }
24+ if (cfgdir)
25+ free(cfgdir);
26+
27 return path;
28 }
29
This page took 0.021568 seconds and 4 git commands to generate.