VirtualBox

Ignore:
Timestamp:
Feb 10, 2014 8:10:18 PM (11 years ago)
Author:
vboxsync
Message:

crOpenGL: include 3D data in framebuffer saved state snapshot, saved state fix

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/HostServices/SharedOpenGL/crserverlib/server_main.c

    r50313 r50405  
    137137    GLint i;
    138138    CRClientNode *pNode, *pNext;
     139    GLboolean fOldEnableDiff;
    139140
    140141    /* avoid a race condition */
     
    159160    cr_server.currentMural = NULL;
    160161
    161     if (CrBltIsInitialized(&cr_server.Blitter))
    162     {
    163         CrBltTerm(&cr_server.Blitter);
    164     }
    165 
    166162    /* sync our state with renderspu,
    167163     * do it before mural & context deletion to avoid deleting currently set murals/contexts*/
     
    179175    crFreeHashtable(cr_server.contextTable, deleteContextInfoCallback);
    180176
     177    /* synchronize with reality */
     178    fOldEnableDiff = crStateEnableDiffOnMakeCurrent(GL_FALSE);
     179    Assert(cr_server.MainContextInfo.pContext);
     180    crStateMakeCurrent(cr_server.MainContextInfo.pContext);
     181    crStateEnableDiffOnMakeCurrent(fOldEnableDiff);
     182
    181183    /* Free vertex programs */
    182184    crFreeHashtable(cr_server.programTable, crFree);
    183185
     186    /* Free murals */
     187    crFreeHashtable(cr_server.muralTable, deleteMuralInfoCallback);
     188
     189    CrPMgrTerm();
     190
     191    if (CrBltIsInitialized(&cr_server.Blitter))
     192    {
     193        CrBltTerm(&cr_server.Blitter);
     194    }
     195
    184196    /* Free dummy murals */
    185197    crFreeHashtable(cr_server.dummyMuralTable, deleteMuralInfoCallback);
    186 
    187     /* Free murals */
    188     crFreeHashtable(cr_server.muralTable, deleteMuralInfoCallback);
    189 
    190     CrPMgrTerm();
    191198
    192199    for (i = 0; i < cr_server.numClients; i++) {
Note: See TracChangeset for help on using the changeset viewer.

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