about summary refs log tree commit homepage
path: root/lib/PublicInbox/Import.pm
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2021-04-03 10:48:26 +0000
committerEric Wong <e@80x24.org>2021-04-03 18:38:47 +0000
commitb3e2975029ae938bb232aaa0cbc3dabda55d57d6 (patch)
treebe5e7278753fa9314fded8c64c13d0d1c67e2990 /lib/PublicInbox/Import.pm
parente8ad075ab7d02b260fdf8470e6d851ade4eac6fa (diff)
downloadpublic-inbox-b3e2975029ae938bb232aaa0cbc3dabda55d57d6.tar.gz
We need a stable fallback time for digest2mid in the presence
of messages without Received/Date headers.  Furthermore, we
must avoid using uninitialized smsg->{mid} when parsing
References for draft replies.
Diffstat (limited to 'lib/PublicInbox/Import.pm')
-rw-r--r--lib/PublicInbox/Import.pm6
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/PublicInbox/Import.pm b/lib/PublicInbox/Import.pm
index 34738279..46f57e27 100644
--- a/lib/PublicInbox/Import.pm
+++ b/lib/PublicInbox/Import.pm
@@ -510,8 +510,8 @@ sub atfork_child {
         }
 }
 
-sub digest2mid ($$) {
-        my ($dig, $hdr) = @_;
+sub digest2mid ($$;$) {
+        my ($dig, $hdr, $fallback_time) = @_;
         my $b64 = $dig->clone->b64digest;
         # Make our own URLs nicer:
         # See "Base 64 Encoding with URL and Filename Safe Alphabet" in RFC4648
@@ -520,7 +520,7 @@ sub digest2mid ($$) {
         # Add a date prefix to prevent a leading '-' in case that trips
         # up some tools (e.g. if a Message-ID were a expected as a
         # command-line arg)
-        my $dt = msg_datestamp($hdr);
+        my $dt = msg_datestamp($hdr, $fallback_time);
         $dt = POSIX::strftime('%Y%m%d%H%M%S', gmtime($dt));
         "$dt.$b64" . '@z';
 }