@@ -64,8 +64,8 @@ pub enum Action {
6464 } ,
6565 // TODO: ConsensusMessage is tied to the Tendermint
6666 ReportDoubleVote {
67- message1 : ConsensusMessage ,
68- message2 : ConsensusMessage ,
67+ message1 : Box < ConsensusMessage > ,
68+ message2 : Box < ConsensusMessage > ,
6969 } ,
7070}
7171
@@ -239,7 +239,10 @@ impl Encodable for Action {
239239 message1,
240240 message2,
241241 } => {
242- s. begin_list ( 3 ) . append ( & ACTION_TAG_REPORT_DOUBLE_VOTE ) . append ( message1) . append ( message2) ;
242+ s. begin_list ( 3 )
243+ . append ( & ACTION_TAG_REPORT_DOUBLE_VOTE )
244+ . append ( message1. as_ref ( ) )
245+ . append ( message2. as_ref ( ) ) ;
243246 }
244247 } ;
245248 }
@@ -340,8 +343,8 @@ impl Decodable for Action {
340343 got : item_count,
341344 } )
342345 }
343- let message1 = rlp. val_at ( 1 ) ?;
344- let message2 = rlp. val_at ( 2 ) ?;
346+ let message1 = Box :: new ( rlp. val_at ( 1 ) ?) ;
347+ let message2 = Box :: new ( rlp. val_at ( 2 ) ?) ;
345348 Ok ( Action :: ReportDoubleVote {
346349 message1,
347350 message2,
@@ -449,8 +452,8 @@ mod tests {
449452 let consensus_message2 =
450453 create_consensus_message ( message_info2, & test_client, vote_step_twister, block_hash_twister) ;
451454 let action = Action :: ReportDoubleVote {
452- message1 : consensus_message1,
453- message2 : consensus_message2,
455+ message1 : Box :: new ( consensus_message1) ,
456+ message2 : Box :: new ( consensus_message2) ,
454457 } ;
455458 let arced_client: Arc < ConsensusClient > = Arc :: new ( test_client) ;
456459 validator_set. register_client ( Arc :: downgrade ( & arced_client) ) ;
0 commit comments