sunxvr500fb: Fix pseudo_palette array size
PATCH 15/24 sunxvr500fb: Fix pseudo_palette array size
- the pseudo_palette is only 16 elements long.
- the pseudo_palette has only 16 elements. Do not write if regno (the array index) is more than 15.
Signed-off-by Antonino Daplas <[email protected]>
---
drivers/video/sunxvr500.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-)
drivers/video/sunxvr500.c +4 -2
@@ -50,7 +50,7 @@ struct e3d_info {u32 fb8_0_off;u32 fb8_1_off; -u32 pseudo_palette[256 ]; +u32 pseudo_palette[16 ]; };static int __devinit e3d_get_props (struct e3d_info *ep)
@@ -126,7 +126,9 @@ static int e3d_setcolreg(unsigned regno, blue_8 = blue >>8 ; value = (blue_8 <<24 ) | (green_8 <<16 ) | (red_8 <<8 ); - ((u32 *)info->pseudo_palette)[regno] = value; + +if (info->fix.visual ==FB_VISUAL_TRUECOLOR && regno <16 ) + ((u32 *)info->pseudo_palette)[regno] = value; red_10 = red >>6 ;
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/