]> Sergey Matveev's repositories - public-inbox.git/commitdiff
syscall: initialize buffer for vec()
authorEric Wong <e@80x24.org>
Thu, 29 Sep 2022 17:48:28 +0000 (17:48 +0000)
committerEric Wong <e@80x24.org>
Thu, 29 Sep 2022 18:05:54 +0000 (18:05 +0000)
This is needed for older Perls (tested perl 5.16.3 on CentOS 7).

lib/PublicInbox/Syscall.pm

index 46496bcaef55085822df8047b3393cd6d876a24c..412ca64ff5891f06d11bd0cbf268f978b0cde806 100644 (file)
@@ -454,7 +454,7 @@ no warnings 'once';
 
 *recv_cmd4 = sub ($$$) {
        my ($sock, undef, $len) = @_;
-       vec($_[1], ($len + 1) * 8, 1) = 0;
+       vec($_[1] //= '', ($len + 1) * 8, 1) = 0;
        my $cmsghdr = "\0" x msg_controllen; # 10 * sizeof(int)
        my $iov = pack('P'.TMPL_size_t, $_[1], $len);
        my $mh = pack('PL' . # msg_name, msg_namelen (socklen_t (U32))