From f66493cb0e2e4baa840bdbf4894d02b54ef38d52 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sat, 7 Nov 2015 11:00:38 +0100 Subject: Merging upstream version 1.15. Signed-off-by: Daniel Baumann --- encoder.h | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'encoder.h') diff --git a/encoder.h b/encoder.h index 577ceeb..725d0e8 100644 --- a/encoder.h +++ b/encoder.h @@ -427,7 +427,7 @@ protected: Bit_model bm_rep1[State::states]; Bit_model bm_rep2[State::states]; Bit_model bm_len[State::states][pos_states]; - Bit_model bm_dis_slot[max_dis_states][1<= start_dis_model ) { @@ -560,8 +560,8 @@ class LZ_encoder : public LZ_encoder_base struct Pair pairs[max_match_len+1]; Trial trials[max_num_trials]; - int dis_slot_prices[max_dis_states][2*max_dictionary_bits]; - int dis_prices[max_dis_states][modeled_distances]; + int dis_slot_prices[len_states][2*max_dictionary_bits]; + int dis_prices[len_states][modeled_distances]; int align_prices[dis_align_size]; int align_price_count; @@ -594,19 +594,19 @@ class LZ_encoder : public LZ_encoder_base rep_len_encoder.price( len, pos_state ); } - int price_dis( const int dis, const int dis_state ) const + int price_dis( const int dis, const int len_state ) const { if( dis < modeled_distances ) - return dis_prices[dis_state][dis]; + return dis_prices[len_state][dis]; else - return dis_slot_prices[dis_state][get_slot( dis )] + + return dis_slot_prices[len_state][get_slot( dis )] + align_prices[dis & (dis_align_size - 1)]; } int price_pair( const int dis, const int len, const int pos_state ) const { return match_len_encoder.price( len, pos_state ) + - price_dis( dis, get_dis_state( len ) ); + price_dis( dis, get_len_state( len ) ); } int read_match_distances() -- cgit v1.2.3