lib/PublicInbox/LeiImport.pm | 4 ++-- lib/PublicInbox/LeiToMail.pm | 4 ++-- lib/PublicInbox/NetReader.pm | 11 +++++------ lib/PublicInbox/NetWriter.pm | 12 ++++-------- diff --git a/lib/PublicInbox/LeiImport.pm b/lib/PublicInbox/LeiImport.pm index 55925cc5ae7287093190927fe43185cbaf6cdb88..01e6c93ce0509f89e178bbea3be4d44738656f93 100644 --- a/lib/PublicInbox/LeiImport.pm +++ b/lib/PublicInbox/LeiImport.pm @@ -42,9 +42,9 @@ $self->input_eml_cb($eml, $vmd); } sub input_net_cb { # imap_each / nntp_each - my ($url, $uid, $kw, $eml, $self) = @_; + my ($uri, $uid, $kw, $eml, $self) = @_; my $vmd = $self->{-import_kw} ? { kw => $kw } : undef; - $vmd->{sync_info} = [ $url, $uid ] if $self->{-mail_sync}; + $vmd->{sync_info} = [ $$uri, $uid ] if $self->{-mail_sync}; $self->input_eml_cb($eml, $vmd); } diff --git a/lib/PublicInbox/LeiToMail.pm b/lib/PublicInbox/LeiToMail.pm index 96a1f8815dd3eb8c9f0a45e1701d9c33a8c7b124..b9d4c8563fa643c3ac012557bdd6adecc16d4ae6 100644 --- a/lib/PublicInbox/LeiToMail.pm +++ b/lib/PublicInbox/LeiToMail.pm @@ -452,10 +452,10 @@ } } sub _imap_augment_or_delete { # PublicInbox::NetReader::imap_each cb - my ($url, $uid, $kw, $eml, $lei, $lse, $delete_mic) = @_; + my ($uri, $uid, $kw, $eml, $lei, $lse, $delete_mic) = @_; update_kw_maybe($lei, $lse, $eml, $kw); if ($delete_mic) { - $lei->{net}->imap_delete_1($url, $uid, $delete_mic); + $lei->{net}->imap_delete_1($uri, $uid, $delete_mic); } else { _augment($eml, $lei); } diff --git a/lib/PublicInbox/NetReader.pm b/lib/PublicInbox/NetReader.pm index a532b2183654a233ed7cce33f761c971c3d6c466..73b8b1cd2c6424cc4acdcf8c33a27df90ed88867 100644 --- a/lib/PublicInbox/NetReader.pm +++ b/lib/PublicInbox/NetReader.pm @@ -397,7 +397,7 @@ undef; } sub _imap_do_msg ($$$$$) { - my ($self, $url, $uid, $raw, $flags) = @_; + my ($self, $uri, $uid, $raw, $flags) = @_; # our target audience expects LF-only, save storage $$raw =~ s/\r\n/\n/sg; my $kw = []; @@ -408,12 +408,12 @@ } elsif ($f eq "\\Recent") { # not in JMAP } elsif ($f eq "\\Deleted") { # not in JMAP return; } elsif ($self->{verbose}) { - warn "# unknown IMAP flag $f <$url/;UID=$uid>\n"; + warn "# unknown IMAP flag $f <$uri/;UID=$uid>\n"; } } @$kw = sort @$kw; # for all UI/UX purposes my ($eml_cb, @args) = @{$self->{eml_each}}; - $eml_cb->($url, $uid, $kw, PublicInbox::Eml->new($raw), @args); + $eml_cb->($uri, $uid, $kw, PublicInbox::Eml->new($raw), @args); } sub run_commit_cb ($) { @@ -532,7 +532,7 @@ for my $uid (@batch) { # messages get deleted, so holes appear my $per_uid = delete $r->{$uid} // next; my $raw = delete($per_uid->{$key}) // next; - _imap_do_msg($self, $$uri, $uid, \$raw, + _imap_do_msg($self, $uri, $uid, \$raw, $per_uid->{FLAGS}); $last_uid = $uid; last if $self->{quit}; @@ -638,7 +638,6 @@ unless ($self->{quiet}) { warn "# $uri fetching ARTICLE $beg..$end\n"; } my $n = $self->{max_batch}; - my $url = $$uri; for ($beg..$end) { last if $self->{quit}; $art = $_; @@ -661,7 +660,7 @@ } $raw = join('', @$raw); $raw =~ s/\r\n/\n/sg; my ($eml_cb, @args) = @{$self->{eml_each}}; - $eml_cb->($url, $art, $kw, PublicInbox::Eml->new(\$raw), @args); + $eml_cb->($uri, $art, $kw, PublicInbox::Eml->new(\$raw), @args); $last_art = $art; } run_commit_cb($self); diff --git a/lib/PublicInbox/NetWriter.pm b/lib/PublicInbox/NetWriter.pm index 06d69f2787a6d218e78bfadfbaae8b1661bae158..2032a1fd22291c55715c170942ff529ca842183c 100644 --- a/lib/PublicInbox/NetWriter.pm +++ b/lib/PublicInbox/NetWriter.pm @@ -28,18 +28,14 @@ } sub mic_for_folder { my ($self, $uri) = @_; - if (!ref($uri)) { - my $u = PublicInbox::URIimap->new($uri); - $_[1] = $uri = $u; - } my $mic = $self->mic_get($uri) or die "E: not connected: $@"; $mic->select($uri->mailbox) or return; $mic; } sub imap_delete_all { - my ($self, $url) = @_; - my $mic = mic_for_folder($self, my $uri = $url) or return; + my ($self, $uri) = @_; + my $mic = mic_for_folder($self, $uri) or return; my $sec = $self->can('uri_section')->($uri); local $0 = $uri->mailbox." $sec"; if ($mic->delete_message('1:*')) { @@ -48,8 +44,8 @@ } } sub imap_delete_1 { - my ($self, $url, $uid, $delete_mic) = @_; - $$delete_mic //= mic_for_folder($self, my $uri = $url) or return; + my ($self, $uri, $uid, $delete_mic) = @_; + $$delete_mic //= mic_for_folder($self, $uri) or return; $$delete_mic->delete_message($uid); }