]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
media: vivid-radio-rx: add a cast to avoid a warning
authorMauro Carvalho Chehab <mchehab@s-opensource.com>
Fri, 23 Mar 2018 11:30:03 +0000 (07:30 -0400)
committerMauro Carvalho Chehab <mchehab@s-opensource.com>
Fri, 23 Mar 2018 11:30:03 +0000 (07:30 -0400)
The logic at vivid_radio_rx_g_tuner() is producint an overflow
warning:

drivers/media/platform/vivid/vivid-radio-rx.c:250 vivid_radio_rx_g_tuner() warn: potential negative subtraction from max '65535 - (__builtin_choose_expr( ==  ||  == , , __builtin_choose_expr( ==  ||  == , , __builtin_choose_expr( ==  ||  == , , __builtin_choose_expr( ==  ||  == , , __builtin_choose_expr( ==  ||  == , , __builtin_choose_expr( == , , (0))))))) * 65535) / delta'

Add a cast to prevent that.

Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
drivers/media/platform/vivid/vivid-radio-rx.c

index acbfea2cce76cc7bbfec565ca71f319c2602c24f..1f86d7d4f72fa57f45ea6aa20c77aa584d84ec35 100644 (file)
@@ -247,7 +247,7 @@ int vivid_radio_rx_g_tuner(struct file *file, void *fh, struct v4l2_tuner *vt)
        vt->rangehigh = FM_FREQ_RANGE_HIGH;
        sig_qual = dev->radio_rx_sig_qual;
        vt->signal = abs(sig_qual) > delta ? 0 :
-                    0xffff - (abs(sig_qual) * 0xffff) / delta;
+                    0xffff - ((unsigned)abs(sig_qual) * 0xffff) / delta;
        vt->afc = sig_qual > delta ? 0 : sig_qual;
        if (abs(sig_qual) > delta)
                vt->rxsubchans = 0;