From 842795abcceeed98632413dcd42b1c0944a1dac5 Mon Sep 17 00:00:00 2001 From: Jung-uk Kim Date: Tue, 18 May 2010 18:28:17 +0000 Subject: [PATCH] Remove unnecessary pointer increment. A wrong pointer may be passed to free(9) and it can cause kernel panic when there are multiple graphics controllers in the system. Tested by: Brandon Gooch (jamesbrandongooch at gmail dot com) MFC after: 3 days --- sys/dev/fb/vesa.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/sys/dev/fb/vesa.c b/sys/dev/fb/vesa.c index 446046c918df..4167b44fac5c 100644 --- a/sys/dev/fb/vesa.c +++ b/sys/dev/fb/vesa.c @@ -240,10 +240,10 @@ vesa_bios_post(void) /* Find the matching PCI video controller. */ dc = devclass_find("vgapci"); if (dc != NULL && devclass_get_devices(dc, &devs, &count) == 0) { - for (dev = NULL, i = 0; dev == NULL && i < count; devs++, i++) - if (device_get_flags(*devs) != 0 && - x86bios_match_device(0xc0000, *devs)) { - dev = *devs; + for (i = 0; i < count; i++) + if (device_get_flags(devs[i]) != 0 && + x86bios_match_device(0xc0000, devs[i])) { + dev = devs[i]; is_pci = 1; break; }