<div dir="ltr"><div><div>This was found when compiling for aarch64 (PowerPC):<br><br>../../src/smi_video.c: In function 'SMI_ResetVideo':<br>../../src/smi_video.c:686:45: error: array subscript is above array bounds [-Werror=array-bounds]<br> value = CLAMP(value, SMI_VideoAttributes[i].min_value,<br><br></div>I'm not sure why the other architectures don't pick this up.<br><br></div>--Robert<br></div><br><div class="gmail_quote"><div dir="ltr">On Wed, Sep 30, 2015 at 5:02 PM Robert Ancell <<a href="mailto:robert.ancell@canonical.com">robert.ancell@canonical.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">The array has only two elements but the clamping code was assuming it contained<br>
all the elements in order. This means no clamping is now done but at least it<br>
wont read off the end of the array.<br>
<br>
Signed-off-by: Robert Ancell <<a href="mailto:robert.ancell@canonical.com" target="_blank">robert.ancell@canonical.com</a>><br>
---<br>
 src/smi_video.c | 4 ----<br>
 1 file changed, 4 deletions(-)<br>
<br>
diff --git a/src/smi_video.c b/src/smi_video.c<br>
index 27df68d..a13668e 100644<br>
--- a/src/smi_video.c<br>
+++ b/src/smi_video.c<br>
@@ -681,10 +681,6 @@ SetAttr(ScrnInfoPtr pScrn, int i, int value)<br>
<br>
     if (i < XV_ENCODING || i > XV_HUE)<br>
        return BadMatch;<br>
-<br>
-    /* clamps value to attribute range */<br>
-    value = CLAMP(value, SMI_VideoAttributes[i].min_value,<br>
-                 SMI_VideoAttributes[i].max_value);<br>
<br>
     if (i == XV_BRIGHTNESS) {<br>
        int my_value = (value <= 128? value + 128 : value - 128);<br>
--<br>
2.5.0<br>
<br>
</blockquote></div>