Work around memory-aliasing in descriptor ParsePubkey

pull/19508/head
MarcoFalke 4 years ago
parent 37485baa27
commit fa8a992589
No known key found for this signature in database
GPG Key ID: CE2B75697E69A548

@ -826,7 +826,8 @@ std::unique_ptr<PubkeyProvider> ParsePubkey(uint32_t key_exp_index, const Span<c
}
if (origin_split.size() == 1) return ParsePubkeyInner(key_exp_index, origin_split[0], permit_uncompressed, out, error);
if (origin_split[0].size() < 1 || origin_split[0][0] != '[') {
error = strprintf("Key origin start '[ character expected but not found, got '%c' instead", origin_split[0][0]);
error = strprintf("Key origin start '[ character expected but not found, got '%c' instead",
origin_split[0].size() < 1 ? /** empty, implies split char */ ']' : origin_split[0][0]);
return nullptr;
}
auto slash_split = Split(origin_split[0].subspan(1), '/');

Loading…
Cancel
Save