aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authordakkar <dakkar@thenautilus.net>2016-12-27 16:26:52 +0000
committerdakkar <dakkar@thenautilus.net>2016-12-27 16:26:52 +0000
commit12541f277d5bbb121a3c6f59a54053a236832ab7 (patch)
tree0d81d3b258ffd27702d6f32729cd19e59685504f /lib
parentmore todo (diff)
downloadSietima-12541f277d5bbb121a3c6f59a54053a236832ab7.tar.gz
Sietima-12541f277d5bbb121a3c6f59a54053a236832ab7.tar.bz2
Sietima-12541f277d5bbb121a3c6f59a54053a236832ab7.zip
fix MailStore::FS test & impl
Diffstat (limited to 'lib')
-rw-r--r--lib/Sietima/MailStore/FS.pm11
1 files changed, 8 insertions, 3 deletions
diff --git a/lib/Sietima/MailStore/FS.pm b/lib/Sietima/MailStore/FS.pm
index 1641c55..a45b433 100644
--- a/lib/Sietima/MailStore/FS.pm
+++ b/lib/Sietima/MailStore/FS.pm
@@ -62,8 +62,13 @@ sub retrieve_by_tags($self,@tags) {
state $check = compile(Object,slurpy ArrayRef[Str]);$check->(@_);
my %msgs;
- for my $tag (@tags) {
- $_++ for @msgs{$self->_tagged_by($tag)};
+ if (@tags) {
+ for my $tag (@tags) {
+ $_++ for @msgs{$self->_tagged_by($tag)};
+ }
+ }
+ else {
+ $msgs{$_->basename}=0 for $self->_msgdir->children;
}
my @ret;
@@ -82,7 +87,7 @@ sub remove($self,$id) {
state $check = compile(Object,Str);$check->(@_);
for my $tag_file ($self->_tagdir->children) {
- $tag_file->edit_lines( sub { /\A\Q$id\E\n?\z/ ? '' : $_ } );
+ $tag_file->edit_lines( sub { $_='' if /\A\Q$id\E\n?\z/ } );
}
$self->_msgdir->child($id)->remove;