mirror of
https://github.com/NixOS/nix.git
synced 2024-11-25 08:12:29 +00:00
Fix segfault in headerCallback()
https://hydra.nixos.org/build/168594664
This commit is contained in:
parent
885d709393
commit
6097790863
@ -98,7 +98,7 @@ std::pair<FlakeRef, std::string> parseFlakeRefWithFragment(
|
||||
if (std::regex_match(url, match, flakeRegex)) {
|
||||
auto parsedURL = ParsedURL{
|
||||
.url = url,
|
||||
.base = "flake:" + std::string(match[1]),
|
||||
.base = "flake:" + match.str(1),
|
||||
.scheme = "flake",
|
||||
.authority = "",
|
||||
.path = match[1],
|
||||
@ -106,12 +106,12 @@ std::pair<FlakeRef, std::string> parseFlakeRefWithFragment(
|
||||
|
||||
return std::make_pair(
|
||||
FlakeRef(Input::fromURL(parsedURL), ""),
|
||||
percentDecode(std::string(match[6])));
|
||||
percentDecode(match.str(6)));
|
||||
}
|
||||
|
||||
else if (std::regex_match(url, match, pathUrlRegex)) {
|
||||
std::string path = match[1];
|
||||
std::string fragment = percentDecode(std::string(match[3]));
|
||||
std::string fragment = percentDecode(match.str(3));
|
||||
|
||||
if (baseDir) {
|
||||
/* Check if 'url' is a path (either absolute or relative
|
||||
|
@ -197,7 +197,7 @@ struct curlFileTransfer : public FileTransfer
|
||||
result.etag = "";
|
||||
result.data.clear();
|
||||
result.bodySize = 0;
|
||||
statusMsg = trim((std::string &) match[1]);
|
||||
statusMsg = trim(match.str(1));
|
||||
acceptRanges = false;
|
||||
encoding = "";
|
||||
} else {
|
||||
|
@ -1263,9 +1263,9 @@ std::string chomp(std::string_view s)
|
||||
std::string trim(std::string_view s, std::string_view whitespace)
|
||||
{
|
||||
auto i = s.find_first_not_of(whitespace);
|
||||
if (i == std::string_view::npos) return "";
|
||||
if (i == s.npos) return "";
|
||||
auto j = s.find_last_not_of(whitespace);
|
||||
return std::string(s, i, j == std::string::npos ? j : j - i + 1);
|
||||
return std::string(s, i, j == s.npos ? j : j - i + 1);
|
||||
}
|
||||
|
||||
|
||||
|
@ -96,7 +96,7 @@ static void update(const StringSet & channelNames)
|
||||
std::smatch match;
|
||||
auto urlBase = std::string(baseNameOf(url));
|
||||
if (std::regex_search(urlBase, match, std::regex("(-\\d.*)$")))
|
||||
cname = cname + (std::string) match[1];
|
||||
cname = cname + match.str(1);
|
||||
|
||||
std::string extraAttrs;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user