Thanks for the backtrace, this seems to indicate that the fault is something like this:
pScrn = xf86Screens[scrnIndex]; // does bad data get in here?
pVidMode = VMPTR(pScrn->pScreen);
pVidMode->First = pScrn->modes; // First set to Invalid pointer?
pVidMode->Next = pVidMode->First->next; // Crash
My guess is that adding a check for pVidMode->First would eliminate the crash.
Thanks for the backtrace, this seems to indicate that the fault is something like this:
pScrn = xf86Screens[ scrnIndex] ; // does bad data get in here? >pScreen) ; >First- >next; // Crash
pVidMode = VMPTR(pScrn-
pVidMode->First = pScrn->modes; // First set to Invalid pointer?
pVidMode->Next = pVidMode-
My guess is that adding a check for pVidMode->First would eliminate the crash.