File tree Expand file tree Collapse file tree 1 file changed +31
-3
lines changed Expand file tree Collapse file tree 1 file changed +31
-3
lines changed Original file line number Diff line number Diff line change @@ -43,9 +43,27 @@ impl<'de, 'a> Deserializer<'de> for JSONValueDeserializer<'a> {
4343 JSONValue :: Null  => visitor. visit_unit ( ) , 
4444 JSONValue :: Bool ( b)  => visitor. visit_bool ( * b) , 
4545 JSONValue :: DoubleQuotedString ( s)  | JSONValue :: SingleQuotedString ( s)  => { 
46-  visitor. visit_str ( unescape ( s) . unwrap ( ) . as_str ( ) ) 
46+  match  unescape ( s)  { 
47+  Ok ( unescaped)  => { 
48+  visitor. visit_str ( unescaped. as_str ( ) ) 
49+  } 
50+  Err ( e)  => { 
51+  Err ( de:: Error :: custom ( e. to_string ( ) ) ) 
52+  } 
53+  } 
54+ 
4755 } 
48-  JSONValue :: Identifier ( s)  => visitor. visit_str ( unescape ( s) . unwrap ( ) . as_str ( ) ) , 
56+  JSONValue :: Identifier ( s)  => { 
57+  match  unescape ( s)  { 
58+  Ok ( unescaped)  => { 
59+  visitor. visit_str ( unescaped. as_str ( ) ) 
60+  } 
61+  Err ( e)  => { 
62+  Err ( de:: Error :: custom ( e. to_string ( ) ) ) 
63+  } 
64+  } 
65+ 
66+  } , 
4967 JSONValue :: JSONObject  {  key_value_pairs }  => { 
5068 // Treat as a map 
5169 let  mut  map_deserializer = JSONMapAccess  { 
@@ -556,7 +574,17 @@ impl<'de, 'a> Deserializer<'de> for JSONValueDeserializer<'a> {
556574 match  self . input  { 
557575 JSONValue :: Identifier ( s) 
558576 | JSONValue :: DoubleQuotedString ( s) 
559-  | JSONValue :: SingleQuotedString ( s)  => visitor. visit_str ( unescape ( s) . unwrap ( ) . as_str ( ) ) , 
577+  | JSONValue :: SingleQuotedString ( s)  => { 
578+  match  unescape ( s)  { 
579+  Ok ( unescaped)  => { 
580+  visitor. visit_str ( unescaped. as_str ( ) ) 
581+  } 
582+  Err ( e)  => { 
583+  Err ( de:: Error :: custom ( e. to_string ( ) ) ) 
584+  } 
585+  } 
586+ 
587+  } , 
560588 _ => self . deserialize_any ( visitor) , 
561589 } 
562590 } 
                                 You can’t perform that action at this time. 
               
                  
0 commit comments