check_for_git calls url_fetch with a WWW::Curl parameter
CURLOPT_NOBODY which suppresses saving the body. The result is that
CURLOPT_WRITEDATA does not update $response_body. Then, even on
success, url_fetch returns undef (which ought to mean 404).
Strictly this is a bit sneaky of check_for_git. But, rather than
trying to make this interface more formal, just make url_fetch set
$response_body to ''. It does return this except in the success case,
so the error cases are still handled right.
Closes: #934126
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
confess "$k $v ".$curl->strerror($x)." ?" if $x;
};
- my $response_body;
+ my $response_body = '';
$setopt->(CURLOPT_REDIR_PROTOCOLS, CURLPROTO_HTTPS|CURLPROTO_HTTP);
$setopt->(CURLOPT_URL, $url);
$setopt->(CURLOPT_NOSIGNAL, 1);