1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
diff -Nur slrn-0.9.8.0.orig/src/misc.c slrn-0.9.8.0/src/misc.c
--- slrn-0.9.8.0.orig/src/misc.c 2003-08-25 17:00:16.000000000 +0200
+++ slrn-0.9.8.0/src/misc.c 2003-11-22 18:22:26.000000000 +0100
@@ -836,6 +836,17 @@
#endif /* VMS */
}
+void slrn_make_home_etc_filename(char *name, char *file, size_t n)
+{
+ char *home_etc = getenv("HOME_ETC");
+
+ if (!home_etc) slrn_make_home_filename(name, file, n);
+ else {
+ *file = 0;
+ slrn_dircat(home_etc, name, file, n);
+ }
+}
+
/*}}}*/
void slrn_make_home_dirname (char *name, char *dir, size_t n) /*{{{*/
diff -Nur slrn-0.9.8.0.orig/src/misc.h slrn-0.9.8.0/src/misc.h
--- slrn-0.9.8.0.orig/src/misc.h 2003-11-22 18:11:46.000000000 +0100
+++ slrn-0.9.8.0/src/misc.h 2003-11-22 18:22:49.000000000 +0100
@@ -28,6 +28,7 @@
#include "vfile.h"
extern void slrn_make_home_filename (char *, char *, size_t);
+extern void slrn_make_home_etc_filename (char *, char *, size_t);
extern void slrn_make_home_dirname (char *, char *, size_t);
extern void slrn_redraw (void);
extern void slrn_update_screen (void);
--- slrn-1.0.2/src/slrn.c.orig 2014-09-20 04:08:47.000000000 +0200
+++ slrn-1.0.2/src/slrn.c 2016-06-26 20:29:15.147971336 +0200
@@ -248,11 +248,11 @@
#endif
#if SLRN_HAS_RNLOCK
- slrn_make_home_filename (".newsrc", file_rn, sizeof (file_rn));
+ slrn_make_home_etc_filename (".newsrc", file_rn, sizeof (file_rn));
if (0 == strcmp (file_rn, Slrn_Newsrc_File))
{
rnlock = 1;
- slrn_make_home_filename (".rnlock", file_rn, sizeof (file_rn));
+ slrn_make_home_etc_filename (".rnlock", file_rn, sizeof (file_rn));
}
#endif
@@ -995,7 +995,7 @@
if (Slrn_Score_File == NULL)
return;
- slrn_make_home_filename (Slrn_Score_File, file, sizeof (file));
+ slrn_make_home_etc_filename (Slrn_Score_File, file, sizeof (file));
if (1 != slrn_file_exists (file))
{
@@ -1183,7 +1183,7 @@
if (init_file == NULL)
{
- slrn_make_home_filename (SLRN_USER_SLRNRC_FILENAME, file, sizeof (file));
+ slrn_make_home_etc_filename (SLRN_USER_SLRNRC_FILENAME, file, sizeof (file));
init_file = file;
}
@@ -1289,7 +1289,7 @@
#else
Slrn_Newsrc_File = ".jnewsrc";
#endif
- slrn_make_home_filename (Slrn_Newsrc_File, file, sizeof (file));
+ slrn_make_home_etc_filename (Slrn_Newsrc_File, file, sizeof (file));
Slrn_Newsrc_File = slrn_safe_strmalloc (file);
}
|