summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--linux/drivers/media/dvb/frontends/stb0899_algo.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/linux/drivers/media/dvb/frontends/stb0899_algo.c b/linux/drivers/media/dvb/frontends/stb0899_algo.c
index 71037dc67..3d13968a7 100644
--- a/linux/drivers/media/dvb/frontends/stb0899_algo.c
+++ b/linux/drivers/media/dvb/frontends/stb0899_algo.c
@@ -467,14 +467,13 @@ static void next_sub_range(struct stb0899_state *state)
if (internal->sub_dir > 0) {
old_sub_range = internal->sub_range;
- if (internal->tuner_offst + internal->sub_range / 2 >=
- internal->srch_range / 2)
- internal->sub_range = 0;
- else
- internal->sub_range = MIN((internal->srch_range / 2) -
+ internal->sub_range = MIN((internal->srch_range / 2) -
(internal->tuner_offst + internal->sub_range / 2),
internal->sub_range);
+ if (internal->sub_range < 0)
+ internal->sub_range = 0;
+
internal->tuner_offst += (old_sub_range + internal->sub_range) / 2;
}