about summary refs log tree commit homepage
path: root/lib/PublicInbox/Spamcheck/Spamc.pm
diff options
context:
space:
mode:
Diffstat (limited to 'lib/PublicInbox/Spamcheck/Spamc.pm')
-rw-r--r--lib/PublicInbox/Spamcheck/Spamc.pm4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/PublicInbox/Spamcheck/Spamc.pm b/lib/PublicInbox/Spamcheck/Spamc.pm
index 312e52df..5190c269 100644
--- a/lib/PublicInbox/Spamcheck/Spamc.pm
+++ b/lib/PublicInbox/Spamcheck/Spamc.pm
@@ -75,8 +75,8 @@ sub _msg_to_fd {
         my $tmpfh;
         my $fd;
         if (my $ref = ref($msg)) {
-
-                return $msg->fileno if $ref ne 'SCALAR' && $msg->can('fileno');
+                my $fileno = eval { fileno($msg) };
+                return $fileno if defined $fileno;
 
                 $tmpfh = IO::File->new_tmpfile;
                 $tmpfh->autoflush(1);