diff --git a/decode.cc b/decode.cc index 9b2168d..84e3189 100644 --- a/decode.cc +++ b/decode.cc @@ -325,6 +325,8 @@ struct Decoder : Common comb = combination(); int poly_index = comb & 15; int seed_value = comb >> 4; + if (seed_value == 0) + std::cerr << "reserved seed value detected" << std::endl; CODE::MLS seq(slm_poly[poly_index], seed_value); for (int i = 0; i < tone_count; ++i) if (i % block_length != meta_off && i % block_length != seed_off) diff --git a/encode.cc b/encode.cc index aa4da26..b7a93d4 100644 --- a/encode.cc +++ b/encode.cc @@ -93,6 +93,8 @@ struct Encoder : public Common hadamard_encoder(seed, seed_data); int poly_index = comb & 15; int seed_value = comb >> 4; + if (seed_value == 0) + continue; CODE::MLS seq(slm_poly[poly_index], seed_value); for (int i = 0, m = 0, s = 0; i < tone_count; ++i) if (i % block_length == meta_off)