about summary refs log tree commit homepage
path: root/lib/PublicInbox/Emergency.pm
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2023-04-25 11:02:58 +0000
committerEric Wong <e@80x24.org>2023-04-25 20:58:33 +0000
commit056ff542a14f215d9a39941829c7436d85f1e8e1 (patch)
tree22834c882355b86d3fa526bc91f3992c229c8453 /lib/PublicInbox/Emergency.pm
parent6c8aea79d69227a104bc99244fbdf037b23ed3fa (diff)
downloadpublic-inbox-056ff542a14f215d9a39941829c7436d85f1e8e1.tar.gz
Showing "failed" is needless if we already know the program
is die-ing.  We'll prefix "BUG:" to bug messages, "W:" to
non-fatal warnings to be consistent with our newer code such
as lei.
Diffstat (limited to 'lib/PublicInbox/Emergency.pm')
-rw-r--r--lib/PublicInbox/Emergency.pm21
1 files changed, 10 insertions, 11 deletions
diff --git a/lib/PublicInbox/Emergency.pm b/lib/PublicInbox/Emergency.pm
index 56c58dd1..74a4069a 100644
--- a/lib/PublicInbox/Emergency.pm
+++ b/lib/PublicInbox/Emergency.pm
@@ -1,10 +1,9 @@
-# Copyright (C) 2016-2021 all contributors <meta@public-inbox.org>
+# Copyright (C) all contributors <meta@public-inbox.org>
 # License: AGPL-3.0+ <https://www.gnu.org/licenses/agpl-3.0.txt>
 #
 # Emergency Maildir delivery for MDA
 package PublicInbox::Emergency;
-use strict;
-use v5.10.1;
+use v5.12;
 use Fcntl qw(:DEFAULT SEEK_SET);
 use Sys::Hostname qw(hostname);
 use IO::Handle; # ->flush
@@ -35,14 +34,14 @@ sub prepare {
         my ($self, $strref) = @_;
         my $pid = $$;
         my $tmp_key = "tmp.$pid";
-        die "already in transaction: $self->{$tmp_key}" if $self->{$tmp_key};
+        die "BUG: in transaction: $self->{$tmp_key}" if $self->{$tmp_key};
         my ($tmp, $fh);
         do {
                 $tmp = _fn_in($self, $pid, 'tmp');
                 $! = undef;
         } while (!sysopen($fh, $tmp, O_CREAT|O_EXCL|O_RDWR) and $! == EEXIST);
-        print $fh $$strref or die "write failed: $!";
-        $fh->flush or die "flush failed: $!";
+        print $fh $$strref or die "print: $!";
+        $fh->flush or die "flush: $!";
         $self->{fh} = $fh;
         $self->{$tmp_key} = $tmp;
 }
@@ -51,15 +50,15 @@ sub abort {
         my ($self) = @_;
         delete $self->{fh};
         my $tmp = delete $self->{"tmp.$$"} or return;
-        unlink($tmp) or warn "Failed to unlink $tmp: $!";
+        unlink($tmp) or warn "W: unlink($tmp): $!";
         undef;
 }
 
 sub fh {
         my ($self) = @_;
-        my $fh = $self->{fh} or die "{fh} not open!\n";
-        seek($fh, 0, SEEK_SET) or die "seek(fh) failed: $!";
-        sysseek($fh, 0, SEEK_SET) or die "sysseek(fh) failed: $!";
+        my $fh = $self->{fh} or die "BUG: {fh} not open";
+        seek($fh, 0, SEEK_SET) or die "seek: $!";
+        sysseek($fh, 0, SEEK_SET) or die "sysseek: $!";
         $fh;
 }
 
@@ -73,7 +72,7 @@ sub commit {
                 $new = _fn_in($self, $pid, 'new');
         } while (!($ok = link($tmp, $new)) && $! == EEXIST);
         die "link($tmp, $new): $!" unless $ok;
-        unlink($tmp) or warn "Failed to unlink $tmp: $!";
+        unlink($tmp) or warn "W: unlink($tmp): $!";
 }
 
 sub DESTROY { commit($_[0]) }