diff mbox

video:fbdev:core:Calculate the size for colormap only after the validation of length for colormap.

Message ID 1446204994-23755-1-git-send-email-shailendra.v@samung.com (mailing list archive)
State New, archived
Headers show

Commit Message

Shailendra Verma Oct. 30, 2015, 11:36 a.m. UTC
From: Shailendra Verma <shailendra.v@samsung.com>

While allocating the memory for color map, the memory size for colors
is being calculated before the validation of length for color map.
Moved the size calculation part after the validation of color map length.

Signed-off-by: Shailendra Verma <shailendra.v@samsung.com>
---
 drivers/video/fbdev/core/fbcmap.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
diff mbox

Patch

diff --git a/drivers/video/fbdev/core/fbcmap.c b/drivers/video/fbdev/core/fbcmap.c
index f89245b..45ad567 100644
--- a/drivers/video/fbdev/core/fbcmap.c
+++ b/drivers/video/fbdev/core/fbcmap.c
@@ -91,7 +91,7 @@  static const struct fb_cmap default_16_colors = {
 
 int fb_alloc_cmap_gfp(struct fb_cmap *cmap, int len, int transp, gfp_t flags)
 {
-	int size = len * sizeof(u16);
+	int size;
 	int ret = -ENOMEM;
 
 	if (cmap->len != len) {
@@ -99,6 +99,7 @@  int fb_alloc_cmap_gfp(struct fb_cmap *cmap, int len, int transp, gfp_t flags)
 		if (!len)
 			return 0;
 
+		size = len * sizeof(u16);
 		cmap->red = kmalloc(size, flags);
 		if (!cmap->red)
 			goto fail;