@@ -64,8 +64,8 @@ pub enum Action {
64
64
} ,
65
65
// TODO: ConsensusMessage is tied to the Tendermint
66
66
ReportDoubleVote {
67
- message1 : ConsensusMessage ,
68
- message2 : ConsensusMessage ,
67
+ message1 : Box < ConsensusMessage > ,
68
+ message2 : Box < ConsensusMessage > ,
69
69
} ,
70
70
}
71
71
@@ -239,7 +239,10 @@ impl Encodable for Action {
239
239
message1,
240
240
message2,
241
241
} => {
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 ( ) ) ;
243
246
}
244
247
} ;
245
248
}
@@ -340,8 +343,8 @@ impl Decodable for Action {
340
343
got : item_count,
341
344
} )
342
345
}
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 ) ?) ;
345
348
Ok ( Action :: ReportDoubleVote {
346
349
message1,
347
350
message2,
@@ -449,8 +452,8 @@ mod tests {
449
452
let consensus_message2 =
450
453
create_consensus_message ( message_info2, & test_client, vote_step_twister, block_hash_twister) ;
451
454
let action = Action :: ReportDoubleVote {
452
- message1 : consensus_message1,
453
- message2 : consensus_message2,
455
+ message1 : Box :: new ( consensus_message1) ,
456
+ message2 : Box :: new ( consensus_message2) ,
454
457
} ;
455
458
let arced_client: Arc < ConsensusClient > = Arc :: new ( test_client) ;
456
459
validator_set. register_client ( Arc :: downgrade ( & arced_client) ) ;
0 commit comments