diff options
Diffstat (limited to 'src/riva_driver.c')
-rw-r--r-- | src/riva_driver.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/riva_driver.c b/src/riva_driver.c index 968ef47..c5e6ea0 100644 --- a/src/riva_driver.c +++ b/src/riva_driver.c @@ -493,8 +493,16 @@ RivaPreInit(ScrnInfoPtr pScrn, int flags) const char *s; if (flags & PROBE_DETECT) { - rivaProbeDDC( pScrn, xf86GetEntityInfo(pScrn->entityList[0])->index ); - return TRUE; + EntityInfoPtr pEnt = xf86GetEntityInfo(pScrn->entityList[0]); + + if (!pEnt) + return FALSE; + + i = pEnt->index; + xfree(pEnt); + + rivaProbeDDC(pScrn, i); + return TRUE; } /* |