summaryrefslogtreecommitdiff
path: root/fml/lib
diff options
context:
space:
mode:
authorfukachan <fukachan>2002-04-18 05:11:23 +0000
committerfukachan <fukachan>2002-04-18 05:11:23 +0000
commit6813323a46d41165938223ca65ec6dcfb41fdbca (patch)
tree66c086a6f6daa91bffbc18c08da20b7a5553a54e /fml/lib
parentfb67934efc6039773d1eadc469559e034c09065a (diff)
downloadfml8-6813323a46d41165938223ca65ec6dcfb41fdbca.tar.gz
fml8-6813323a46d41165938223ca65ec6dcfb41fdbca.tar.bz2
fml8-6813323a46d41165938223ca65ec6dcfb41fdbca.zip
eval filtering
Diffstat (limited to 'fml/lib')
-rw-r--r--fml/lib/FML/Process/Distribute.pm25
1 files changed, 14 insertions, 11 deletions
diff --git a/fml/lib/FML/Process/Distribute.pm b/fml/lib/FML/Process/Distribute.pm
index c4034455..a3ae21a0 100644
--- a/fml/lib/FML/Process/Distribute.pm
+++ b/fml/lib/FML/Process/Distribute.pm
@@ -3,7 +3,7 @@
# Copyright (C) 2000,2001,2002 Ken'ichi Fukamachi
# All rights reserved.
#
-# $FML: Distribute.pm,v 1.70 2002/04/12 11:54:38 fukachan Exp $
+# $FML: Distribute.pm,v 1.71 2002/04/15 03:47:23 fukachan Exp $
#
package FML::Process::Distribute;
@@ -125,16 +125,19 @@ sub _check_filter
my ($curproc, $args) = @_;
my $config = $curproc->{ config };
- use FML::Filter;
- my $filter = new FML::Filter;
- $filter->check($curproc, $args);
-
- # filter traps this message.
- if ($filter->error()) {
- # we should stop this process ASAP.
- $curproc->refuse_further_processing();
- Log("mail loop detected");
- }
+ eval q{
+ use FML::Filter;
+ my $filter = new FML::Filter;
+ my $r = $filter->check($curproc, $args);
+
+ # filter traps this message.
+ if ($r = $filter->error()) {
+ # we should stop this process ASAP.
+ $curproc->refuse_further_processing();
+ Log("rejected by filter due to $r");
+ }
+ };
+ Log($@) if $@;
}