All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] fbdev: Fix software blanking code
@ 2004-10-24 21:48 ` Antonino A. Daplas
  0 siblings, 0 replies; 2+ messages in thread
From: Antonino A. Daplas @ 2004-10-24 21:48 UTC (permalink / raw)
  To: Andrew Morton, Linus Torvalds; +Cc: Linux Fbdev development list, linux-kernel

The code in fbmem.c:fb_blank() is broken.  For drivers without an fb_blank
hook, an FBIO_BLANK ioctl will produce wrong colors or will segfault.

Signed-off-by: Antonino Daplas <adaplas@pol.net>
---
 fbmem.c |   10 ++++++----
 1 files changed, 6 insertions(+), 4 deletions(-)

diff -Nru a/drivers/video/fbmem.c b/drivers/video/fbmem.c
--- a/drivers/video/fbmem.c	2004-10-17 15:03:25 +08:00
+++ b/drivers/video/fbmem.c	2004-10-25 05:45:24 +08:00
@@ -750,18 +750,20 @@
 	
 	if (info->fbops->fb_blank && !info->fbops->fb_blank(blank, info))
 		return 0;
+
+	cmap = info->cmap;
+
 	if (blank) { 
 		black = kmalloc(sizeof(u16) * info->cmap.len, GFP_KERNEL);
-		if (!black) {
+		if (black) {
 			memset(black, 0, info->cmap.len * sizeof(u16));
 			cmap.red = cmap.green = cmap.blue = black;
 			cmap.transp = info->cmap.transp ? black : NULL;
 			cmap.start = info->cmap.start;
 			cmap.len = info->cmap.len;
 		}
-	} else
-		cmap = info->cmap;
-
+	}
+
 	err = fb_set_cmap(&cmap, info);
 	kfree(black);
 




-------------------------------------------------------
This SF.net email is sponsored by: IT Product Guide on ITManagersJournal
Use IT products in your business? Tell us what you think of them. Give us
Your Opinions, Get Free ThinkGeek Gift Certificates! Click to find out more
http://productguide.itmanagersjournal.com/guidepromo.tmpl

^ permalink raw reply	[flat|nested] 2+ messages in thread

* [PATCH] fbdev: Fix software blanking code
@ 2004-10-24 21:48 ` Antonino A. Daplas
  0 siblings, 0 replies; 2+ messages in thread
From: Antonino A. Daplas @ 2004-10-24 21:48 UTC (permalink / raw)
  To: Andrew Morton, Linus Torvalds; +Cc: Linux Fbdev development list, linux-kernel

The code in fbmem.c:fb_blank() is broken.  For drivers without an fb_blank
hook, an FBIO_BLANK ioctl will produce wrong colors or will segfault.

Signed-off-by: Antonino Daplas <adaplas@pol.net>
---
 fbmem.c |   10 ++++++----
 1 files changed, 6 insertions(+), 4 deletions(-)

diff -Nru a/drivers/video/fbmem.c b/drivers/video/fbmem.c
--- a/drivers/video/fbmem.c	2004-10-17 15:03:25 +08:00
+++ b/drivers/video/fbmem.c	2004-10-25 05:45:24 +08:00
@@ -750,18 +750,20 @@
 	
 	if (info->fbops->fb_blank && !info->fbops->fb_blank(blank, info))
 		return 0;
+
+	cmap = info->cmap;
+
 	if (blank) { 
 		black = kmalloc(sizeof(u16) * info->cmap.len, GFP_KERNEL);
-		if (!black) {
+		if (black) {
 			memset(black, 0, info->cmap.len * sizeof(u16));
 			cmap.red = cmap.green = cmap.blue = black;
 			cmap.transp = info->cmap.transp ? black : NULL;
 			cmap.start = info->cmap.start;
 			cmap.len = info->cmap.len;
 		}
-	} else
-		cmap = info->cmap;
-
+	}
+
 	err = fb_set_cmap(&cmap, info);
 	kfree(black);
 



^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2004-10-24 21:41 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-10-24 21:48 [PATCH] fbdev: Fix software blanking code Antonino A. Daplas
2004-10-24 21:48 ` Antonino A. Daplas

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.