File tree Expand file tree Collapse file tree 1 file changed +4
-2
lines changed Expand file tree Collapse file tree 1 file changed +4
-2
lines changed Original file line number Diff line number Diff line change @@ -88,12 +88,14 @@ pub fn pubkey_from_str(s: &str) -> solana_program::pubkey::Pubkey {
8888impl BoltMetadata {
8989 pub fn try_from_account_info ( account : & AccountInfo ) -> Result < Self > {
9090 let data = account. try_borrow_data ( ) ?;
91- let bolt_metadata = & data[ 8 ..8 + std:: mem:: size_of :: < BoltMetadata > ( ) ] ;
92- Ok ( BoltMetadata :: try_from_slice ( bolt_metadata) ?)
91+ require ! ( data. len( ) >= 8 + BoltMetadata :: INIT_SPACE , ErrorCode :: AccountDidNotDeserialize ) ;
92+ let slice = & data[ 8 ..8 + BoltMetadata :: INIT_SPACE ] ;
93+ Ok ( BoltMetadata :: try_from_slice ( slice) ?)
9394 }
9495
9596 pub fn discriminator_from_account_info ( account : & AccountInfo ) -> Result < Vec < u8 > > {
9697 let data = account. try_borrow_data ( ) ?;
98+ require ! ( data. len( ) >= 8 , ErrorCode :: AccountDidNotDeserialize ) ;
9799 let discriminator = & data[ 0 ..8 ] ;
98100 Ok ( discriminator. to_vec ( ) )
99101 }
You can’t perform that action at this time.
0 commit comments