* [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.