Changeset 88

Show
Ignore:
Timestamp:
06.12.2006 23:00:09 (2 years ago)
Author:
decoder
Message:

Fixes /tmp bug concerning multiple images.
For each image, an own /tmp dir is created and now also removed correctly.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/devel/FuzzyOcr.pm

    r87 r88  
    2626    get_tmpdir 
    2727    set_tmpdir 
     28    get_all_tmpdirs 
    2829    get_pms 
    2930    save_pms 
     
    4041use FuzzyOcr::Deanimate qw(deanimate); 
    4142use FuzzyOcr::Scoring qw(wrong_ctype wrong_extension corrupt_img known_img_hash); 
    42 use FuzzyOcr::Misc qw(max removedir save_execute); 
     43use FuzzyOcr::Misc qw(max removedirs save_execute); 
    4344 
    4445our @ISA = qw(Mail::SpamAssassin::Plugin); 
     
    267268    if ($cnt == 0) { 
    268269        infolog("Skipping OCR, no image files found..."); 
    269         removedir($imgdir) if (defined($imgdir) and ($conf->{focr_keep_bad_images}<2)); 
     270        removedirs(get_all_tmpdirs()) if (defined($imgdir) and ($conf->{focr_keep_bad_images}<2)); 
    270271        return 0; 
    271272    } 
     
    649650                    known_img_hash($score,$dinfo); 
    650651                    infolog("Message is SPAM. $dinfo") if ($conf->{focr_enable_image_hashing} < 3); 
    651                     removedir($imgdir); 
     652                    removedirs(get_all_tmpdirs()); 
    652653                    return 0; 
    653654                } 
     
    868869    } 
    869870    if ($imgerr == 0 and $conf->{focr_keep_bad_images}<2) { 
    870         removedir($imgdir); 
     871        removedirs(get_all_tmpdirs()); 
    871872    } 
    872873    if ($conf->{focr_enable_image_hashing} == 3) { 
  • trunk/devel/FuzzyOcr/Config.pm

    r84 r88  
    1919    set_tmpdir 
    2020    get_tmpdir 
     21    get_all_tmpdirs 
    2122    get_pms 
    2223    save_pms  
     
    4748our $pid; 
    4849our $tmpdir; 
     50our @tmpdirs; 
    4951 
    5052our @bin_utils = qw/gifsicle 
     
    104106sub set_tmpdir { 
    105107    $tmpdir = shift; 
     108    push(@tmpdirs, $tmpdir); 
    106109} 
    107110 
    108111sub get_tmpdir { 
    109112    return $tmpdir; 
     113} 
     114 
     115sub get_all_tmpdirs { 
     116    return @tmpdirs; 
    110117} 
    111118 
  • trunk/devel/FuzzyOcr/Misc.pm

    r83 r88  
    33 
    44use base 'Exporter'; 
    5 our @EXPORT_OK = qw(max removedir save_execute); 
     5our @EXPORT_OK = qw(max removedirs removedir save_execute); 
    66 
    77use lib qw(..); 
     
    1818    if     ( $_[0] < $_[1] )    { return $_[1] } 
    1919    else                        { return $_[0] } 
     20} 
     21 
     22sub removedirs { 
     23    my @dirs = @_; 
     24    foreach my $dir (@dirs) { 
     25        removedir($dir); 
     26    } 
    2027} 
    2128