aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/fb/vga.c
diff options
context:
space:
mode:
authorPoul-Henning Kamp <phk@FreeBSD.org>2002-10-02 20:34:23 +0000
committerPoul-Henning Kamp <phk@FreeBSD.org>2002-10-02 20:34:23 +0000
commit8311f05a45f1bd66a3a85864b4e2173800c54ef6 (patch)
tree1252083c93a2eb6df092da12c45f4d47d053d6ca /sys/dev/fb/vga.c
parent0d6326492bf73633cadded7aff64290d93103128 (diff)
downloadsrc-8311f05a45f1bd66a3a85864b4e2173800c54ef6.tar.gz
src-8311f05a45f1bd66a3a85864b4e2173800c54ef6.zip
Fix rare and probably inconsequential memory leak.
Spotted by: FlexeLint
Notes
Notes: svn path=/head/; revision=104389
Diffstat (limited to 'sys/dev/fb/vga.c')
-rw-r--r--sys/dev/fb/vga.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/dev/fb/vga.c b/sys/dev/fb/vga.c
index ba876fc7480e..f6aab6e22520 100644
--- a/sys/dev/fb/vga.c
+++ b/sys/dev/fb/vga.c
@@ -2850,8 +2850,10 @@ get_palette(video_adapter_t *adp, int base, int count,
r = malloc(count*3, M_DEVBUF, M_WAITOK);
g = r + count;
b = g + count;
- if (vga_save_palette2(adp, base, count, r, g, b))
+ if (vga_save_palette2(adp, base, count, r, g, b)) {
+ free(r, M_DEVBUF);
return ENODEV;
+ }
copyout(r, red, count);
copyout(g, green, count);
copyout(b, blue, count);