summaryrefslogtreecommitdiff
path: root/slrn-home_etc.patch
blob: d82a2ed991a753bb7b03f82b2e056bd0d704f040 (plain)
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);
      }