lib/PublicInbox/Eml.pm | 2 +- lib/PublicInbox/MsgIter.pm | 2 +- t/eml.t | 2 +- diff --git a/lib/PublicInbox/Eml.pm b/lib/PublicInbox/Eml.pm index d2bd391554566d2e7939dfea36141e8660e013f5..ec682b919eab0d796d6d49089f94ed594a00f2f8 100644 --- a/lib/PublicInbox/Eml.pm +++ b/lib/PublicInbox/Eml.pm @@ -237,7 +237,7 @@ # $once - unref body scalar during iteration sub each_part { my ($self, $cb, $arg, $once, $all) = @_; my $p = mp_descend($self, $once // 0) or - return $cb->([$self, 0, 0], $arg); + return $cb->([$self, 0, 1], $arg); $cb->([$self, 0, 0], $arg) if ($all || $self->{-call_cb}); # rare diff --git a/lib/PublicInbox/MsgIter.pm b/lib/PublicInbox/MsgIter.pm index 5ec2a4d9c7f1d3e06f76d4c4abb639ddacb00ac4..bb1dfeadc291857f993b68dd297da46de3a9728c 100644 --- a/lib/PublicInbox/MsgIter.pm +++ b/lib/PublicInbox/MsgIter.pm @@ -34,7 +34,7 @@ $cb->($p, $cb_arg); } } } else { - $cb->([$mime, 0, 0], $cb_arg); + $cb->([$mime, 0, 1], $cb_arg); } } diff --git a/t/eml.t b/t/eml.t index a2479f6f068187071d35cc441679eb012b06eb70..8d131b1418eb7c510b55297ef2cbeed4632fd038 100644 --- a/t/eml.t +++ b/t/eml.t @@ -169,7 +169,7 @@ EOF is(scalar(@tmp), 1, 'got one part even w/o boundary'); is($tmp[0]->[0]->[0]->body, "hello world\n", 'body preserved'); is($tmp[0]->[0]->[1], 0, '$depth is zero'); - is($tmp[0]->[0]->[2], 0, '@idx is zero'); + is($tmp[0]->[0]->[2], 1, '@idx is one'); } # I guess the following only worked in PI::M because of a happy accident