diff --git a/hw/xfree86/drivers/video/modesetting/driver.c b/hw/xfree86/drivers/video/modesetting/driver.c index da9a897e44..c43df83fe1 100644 --- a/hw/xfree86/drivers/video/modesetting/driver.c +++ b/hw/xfree86/drivers/video/modesetting/driver.c @@ -499,8 +499,6 @@ Probe(DriverPtr drv, int flags) int i, numDevSections; GDevPtr *devSections; Bool foundScreen = FALSE; - const char *dev; - ScrnInfoPtr scrn = NULL; /* For now, just bail out for PROBE_DETECT. */ if (flags & PROBE_DETECT) @@ -515,11 +513,15 @@ Probe(DriverPtr drv, int flags) } for (i = 0; i < numDevSections; i++) { - int entity_num; - dev = xf86FindOptionValue(devSections[i]->options, "kmsdev"); - if (probe_hw(dev, NULL)) { + int entity_num = -1; + ScrnInfoPtr scrn = NULL; + const char *dev = xf86FindOptionValue(devSections[i]->options, "kmsdev"); + if (probe_hw(dev, NULL)) { entity_num = xf86ClaimFbSlot(drv, 0, devSections[i], TRUE); + } + + if (entity_num != -1) { scrn = xf86ConfigFbEntity(scrn, 0, entity_num, NULL, NULL, NULL, NULL); }