aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mail/ChangeLog5
-rw-r--r--mail/em-junk-filter.c18
2 files changed, 22 insertions, 1 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog
index 94316ca0d1..73a4a1624b 100644
--- a/mail/ChangeLog
+++ b/mail/ChangeLog
@@ -5,6 +5,11 @@
Fixes #60260
+ (em_junk_sa_test_spamd): try to get spamd/spamc binaries from
+ gconf
+
+ Implements #59368
+
2004-06-18 Not Zed <NotZed@Ximian.com>
** See #31027.
diff --git a/mail/em-junk-filter.c b/mail/em-junk-filter.c
index 338dd5d931..3c9627af66 100644
--- a/mail/em-junk-filter.c
+++ b/mail/em-junk-filter.c
@@ -273,9 +273,25 @@ em_junk_sa_test_spamd (void)
char *spamc_binaries [3] = {"spamc", "/usr/sbin/spamc", NULL};
char *spamd_binaries [3] = {"spamd", "/usr/sbin/spamd", NULL};
+ if (em_junk_sa_gconf) {
+ char *binary;
+
+ binary = gconf_client_get_string (em_junk_sa_gconf, "/apps/evolution/mail/junk/sa/spamc_binary", NULL);
+ if (binary) {
+ spamc_binaries [0] = binary;
+ spamc_binaries [1] = NULL;
+ }
+ binary = gconf_client_get_string (em_junk_sa_gconf, "/apps/evolution/mail/junk/sa/spamd_binary", NULL);
+ if (binary) {
+ spamd_binaries [0] = binary;
+ spamd_binaries [1] = NULL;
+ try_system_spamd = FALSE;
+ }
+ }
+
em_junk_sa_use_spamc = FALSE;
- if (em_junk_sa_local_only) {
+ if (em_junk_sa_local_only && try_system_spamd) {
i = 0;
argv [i++] = "/bin/sh";
argv [i++] = "-c";