mirror of
https://github.com/alexgo-io/stacks-puppet-node.git
synced 2026-04-30 20:52:12 +08:00
Merge branch 'master' into chore/master-to-develop
This commit is contained in:
@@ -170,6 +170,7 @@ pub enum CheckErrors {
|
||||
|
||||
// strings
|
||||
InvalidCharactersDetected,
|
||||
InvalidUTF8Encoding,
|
||||
|
||||
// secp256k1 signature
|
||||
InvalidSecp65k1Signature,
|
||||
@@ -405,6 +406,7 @@ impl DiagnosableError for CheckErrors {
|
||||
CheckErrors::TraitReferenceNotAllowed => format!("trait references can not be stored"),
|
||||
CheckErrors::ContractOfExpectsTrait => format!("trait reference expected"),
|
||||
CheckErrors::InvalidCharactersDetected => format!("invalid characters detected"),
|
||||
CheckErrors::InvalidUTF8Encoding => format!("invalid UTF8 encoding"),
|
||||
CheckErrors::InvalidSecp65k1Signature => format!("invalid seckp256k1 signature"),
|
||||
CheckErrors::TypeAlreadyAnnotatedFailure | CheckErrors::CheckerImplementationFailure => {
|
||||
format!("internal error - please file an issue on github.com/blockstack/blockstack-core")
|
||||
|
||||
@@ -786,8 +786,9 @@ impl Value {
|
||||
let matched = captures.name("value").unwrap();
|
||||
let scalar_value = window[matched.start()..matched.end()].to_string();
|
||||
let unicode_char = {
|
||||
let u = u32::from_str_radix(&scalar_value, 16).unwrap();
|
||||
let c = char::from_u32(u).unwrap();
|
||||
let u = u32::from_str_radix(&scalar_value, 16)
|
||||
.map_err(|_| CheckErrors::InvalidUTF8Encoding)?;
|
||||
let c = char::from_u32(u).ok_or_else(|| CheckErrors::InvalidUTF8Encoding)?;
|
||||
let mut encoded_char: Vec<u8> = vec![0; c.len_utf8()];
|
||||
c.encode_utf8(&mut encoded_char[..]);
|
||||
encoded_char
|
||||
|
||||
Reference in New Issue
Block a user