diff --git a/src/input/mpegts/mpegts_service.c b/src/input/mpegts/mpegts_service.c index e2b06e39c8..4467b7be52 100644 --- a/src/input/mpegts/mpegts_service.c +++ b/src/input/mpegts/mpegts_service.c @@ -451,7 +451,8 @@ mpegts_service_channel_icon ( service_t *s ) case DVB_TYPE_S: if ((pos = dvb_network_get_orbital_pos(mmd->mm_network)) == INT_MAX) return NULL; - hash = (pos >= 0 ? pos : 0xFFFF - abs(pos)) << 16; + assert(pos >= -1800 && pos <= 1800); + hash = (pos >= 0 ? pos : 3600 - pos) << 16; break; case DVB_TYPE_C: hash = 0xFFFF0000;