about summary refs log tree commit homepage
path: root/lib/PublicInbox/SolverGit.pm
diff options
context:
space:
mode:
authorEric Wong <e@yhbt.net>2020-05-07 21:05:44 +0000
committerEric Wong <e@yhbt.net>2020-05-09 08:59:10 +0000
commit8d1b87f498ea47bb752ea24900372df192d322fb (patch)
tree3d14a85ee2e353544e5d2a7cd59c0e071065bf76 /lib/PublicInbox/SolverGit.pm
parentdc7dc9ef49e3d396d2b47fa2befd1718aff45f0d (diff)
downloadpublic-inbox-8d1b87f498ea47bb752ea24900372df192d322fb.tar.gz
msg_iter: make ->each_part method for PublicInbox::MIME
The reliance on Email::MIME->subparts is a tad inefficient with
a work-in-progress module to replace Email::MIME.  So move
towards using ->each_part as a class-specific iterator which can
take advantage of more class-specific optimizations in the
yet-to-be-revealed PublicInbox::Eml and PublicInbox::Gmime
classes.

The msg_iter() sub remains for compatibility with existing
3rd-party scripts/modules which use our small public Perl API
and Email::MIME.
Diffstat (limited to 'lib/PublicInbox/SolverGit.pm')
-rw-r--r--lib/PublicInbox/SolverGit.pm4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/PublicInbox/SolverGit.pm b/lib/PublicInbox/SolverGit.pm
index c32a5bae..f718e28c 100644
--- a/lib/PublicInbox/SolverGit.pm
+++ b/lib/PublicInbox/SolverGit.pm
@@ -14,7 +14,7 @@ use 5.010_001;
 use File::Temp 0.19 (); # 0.19 for ->newdir
 use Fcntl qw(SEEK_SET);
 use PublicInbox::Git qw(git_unquote git_quote);
-use PublicInbox::MsgIter qw(msg_iter msg_part_text);
+use PublicInbox::MsgIter qw(msg_part_text);
 use PublicInbox::Qspawn;
 use PublicInbox::Tmpfile;
 use URI::Escape qw(uri_escape_utf8);
@@ -234,7 +234,7 @@ sub find_extract_diffs ($$$) {
         my $diffs = [];
         foreach my $smsg (@$msgs) {
                 $ibx->smsg_mime($smsg) or next;
-                msg_iter(delete $smsg->{mime}, \&extract_diff,
+                delete($smsg->{mime})->each_part(\&extract_diff,
                                 [$self, $diffs, $pre, $post, $ibx, $smsg], 1);
         }
         @$diffs ? $diffs : undef;