@@ -401,10 +401,10 @@ impl<'de> serde::Deserialize<'de> for SecretKey {
401401 "a hex string representing 32 byte SecretKey" ,
402402 ) )
403403 } else {
404- let visitor = super :: serde_util :: Tuple32Visitor :: new (
405- "raw 32 bytes SecretKey" ,
406- SecretKey :: from_slice ,
407- ) ;
404+ let visitor =
405+ super :: serde_util :: Tuple32Visitor :: new ( "raw 32 bytes SecretKey" , |bytes| {
406+ SecretKey :: from_byte_array ( & bytes )
407+ } ) ;
408408 d. deserialize_tuple ( constants:: SECRET_KEY_SIZE , visitor)
409409 }
410410 }
@@ -790,10 +790,10 @@ impl<'de> serde::Deserialize<'de> for PublicKey {
790790 "an ASCII hex string representing a public key" ,
791791 ) )
792792 } else {
793- let visitor = super :: serde_util :: Tuple33Visitor :: new (
794- "33 bytes compressed public key" ,
795- PublicKey :: from_slice ,
796- ) ;
793+ let visitor =
794+ super :: serde_util :: Tuple33Visitor :: new ( "33 bytes compressed public key" , |bytes| {
795+ PublicKey :: from_byte_array_compressed ( & bytes )
796+ } ) ;
797797 d. deserialize_tuple ( constants:: PUBLIC_KEY_SIZE , visitor)
798798 }
799799 }
@@ -1117,7 +1117,7 @@ impl<'de> serde::Deserialize<'de> for Keypair {
11171117 let ctx = Secp256k1 :: signing_only ( ) ;
11181118
11191119 #[ allow( clippy:: needless_borrow) ]
1120- Keypair :: from_seckey_slice ( & ctx, data)
1120+ Keypair :: from_seckey_slice ( & ctx, & data)
11211121 } ) ;
11221122 d. deserialize_tuple ( constants:: SECRET_KEY_SIZE , visitor)
11231123 }
@@ -1597,7 +1597,7 @@ impl<'de> serde::Deserialize<'de> for XOnlyPublicKey {
15971597 } else {
15981598 let visitor = super :: serde_util:: Tuple32Visitor :: new (
15991599 "raw 32 bytes schnorr public key" ,
1600- XOnlyPublicKey :: from_slice ,
1600+ |bytes| XOnlyPublicKey :: from_byte_array ( & bytes ) ,
16011601 ) ;
16021602 d. deserialize_tuple ( constants:: SCHNORR_PUBLIC_KEY_SIZE , visitor)
16031603 }
0 commit comments