From: Eric Wong Date: Thu, 29 Sep 2022 17:48:28 +0000 (+0000) Subject: syscall: initialize buffer for vec() X-Git-Url: http://www.git.stargrave.org/?p=public-inbox.git;a=commitdiff_plain;h=d02a695ea7505b8fd048c6b4702a46cea62f2b85 syscall: initialize buffer for vec() This is needed for older Perls (tested perl 5.16.3 on CentOS 7). --- diff --git a/lib/PublicInbox/Syscall.pm b/lib/PublicInbox/Syscall.pm index 46496bca..412ca64f 100644 --- a/lib/PublicInbox/Syscall.pm +++ b/lib/PublicInbox/Syscall.pm @@ -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))