In case it confuses the disassembly, here you can see the inserted
"assert" in my source:

void
DRIDoBlockHandler(int screenNum, pointer blockData,
                  pointer pTimeout, pointer pReadmask)
{
    ScreenPtr pScreen = screenInfo.screens[screenNum];
    DRIScreenPrivPtr pDRIPriv = DRI_SCREEN_PRIV(pScreen);

    assert( pDRIPriv );
    if (pDRIPriv->pDriverInfo->driverSwapMethod == DRI_HIDE_X_CONTEXT) {
        /* hide X context by swapping 2D component here */
        (*pDRIPriv->pDriverInfo->SwapContext)(pScreen,
                                              DRI_2D_SYNC,
                                              DRI_NO_CONTEXT,
                                              NULL,
                                              DRI_2D_CONTEXT,
                                              pDRIPriv->partial3DContextStore);
    }

    if (pDRIPriv->windowsTouched)
        DRM_SPINUNLOCK(&pDRIPriv->pSAREA->drawable_lock, 1);
    pDRIPriv->windowsTouched = FALSE;

    DRIUnlock(pScreen);
}

-- 
Xorg segfault in DRIDoBlockHandler
https://launchpad.net/bugs/72375

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to