VirtualBox

vbox的更動 55575 路徑 trunk/src/VBox/GuestHost


忽略:
時間撮記:
2015-4-30 下午06:42:35 (10 年 以前)
作者:
vboxsync
訊息:

3D: state tracker: do not modify stack variables which come along all the functions calls.

檔案:
修改 1 筆資料

圖例:

未更動
新增
刪除
  • trunk/src/VBox/GuestHost/OpenGL/state_tracker/state_init.c

    r52329 r55575  
    715715{
    716716    CRContext *current = GetCurrentContext();
    717 
    718     if (ctx == NULL)
    719         ctx = defaultContext;
    720 
    721     if (current == ctx)
     717    CRContext *pLocalCtx = ctx;
     718
     719    if (pLocalCtx == NULL)
     720        pLocalCtx = defaultContext;
     721
     722    if (current == pLocalCtx)
    722723        return; /* no-op */
    723724
    724     CRASSERT(ctx);
     725    CRASSERT(pLocalCtx);
    725726
    726727    if (g_bVBoxEnableDiffOnMakeCurrent && current) {
     
    728729           we may not have one, aka the packspu */
    729730        if (diff_api.AlphaFunc)
    730             crStateSwitchContext( current, ctx );
    731     }
    732 
    733 #ifdef CHROMIUM_THREADSAFE
    734     SetCurrentContext(ctx);
     731            crStateSwitchContext( current, pLocalCtx );
     732    }
     733
     734#ifdef CHROMIUM_THREADSAFE
     735    SetCurrentContext(pLocalCtx);
    735736#else
    736     __currentContext = ctx;
     737    __currentContext = pLocalCtx;
    737738#endif
    738739
    739740    /* ensure matrix state is also current */
    740     crStateMatrixMode(ctx->transform.matrixMode);
     741    crStateMatrixMode(pLocalCtx->transform.matrixMode);
    741742}
    742743
     
    748749{
    749750    CRContext *current = GetCurrentContext();
    750 
    751     if (ctx == NULL && !fCleanupDefault)
    752         ctx = defaultContext;
    753 
    754     if (current == ctx)
     751    CRContext *pLocalCtx = ctx;
     752
     753    if (pLocalCtx == NULL && !fCleanupDefault)
     754        pLocalCtx = defaultContext;
     755
     756    if (current == pLocalCtx)
    755757        return; /* no-op */
    756758
    757759#ifdef CHROMIUM_THREADSAFE
    758     SetCurrentContext(ctx);
     760    SetCurrentContext(pLocalCtx);
    759761#else
    760     __currentContext = ctx;
    761 #endif
    762 
    763     if (ctx)
     762    __currentContext = pLocalCtx;
     763#endif
     764
     765    if (pLocalCtx)
    764766    {
    765767        /* ensure matrix state is also current */
    766         crStateMatrixMode(ctx->transform.matrixMode);
     768        crStateMatrixMode(pLocalCtx->transform.matrixMode);
    767769    }
    768770}
注意: 瀏覽 TracChangeset 來幫助您使用更動檢視器

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette