VirtualBox

Ignore:
Timestamp:
May 6, 2013 1:30:43 PM (12 years ago)
Author:
vboxsync
Message:

crOpenGL: display lists hw sync fix

File:
1 edited

Legend:

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

    r40691 r45910  
    6969}
    7070
     71static void crServerQueryHWState()
     72{
     73    GLuint fbFbo, bbFbo;
     74    CRClient *client = cr_server.curClient;
     75    CRMuralInfo *mural = client ? client->currentMural : NULL;
     76    if (mural && mural->fPresentMode & CR_SERVER_REDIR_F_FBO)
     77    {
     78        fbFbo = mural->aidFBOs[CR_SERVER_FBO_FB_IDX(mural)];
     79        bbFbo = mural->aidFBOs[CR_SERVER_FBO_BB_IDX(mural)];
     80    }
     81    else
     82    {
     83        fbFbo = bbFbo = 0;
     84    }
     85    crStateQueryHWState(fbFbo, bbFbo);
     86}
     87
    7188void SERVER_DISPATCH_APIENTRY crServerDispatchEndList(void)
    7289{
     90    CRContext *g = crStateGetCurrent();
     91    CRListsState *l = &(g->lists);
     92
    7393    cr_server.head_spu->dispatch_table.EndList();
    7494    crStateEndList();
     95
     96#ifndef IN_GUEST
     97    if (l->mode==GL_COMPILE)
     98    {
     99        crServerQueryHWState();
     100    }
     101#endif
    75102}
    76103
     
    84111        /* Issue the list as-is */
    85112        cr_server.head_spu->dispatch_table.CallList( list );
    86         crStateQueryHWState();
     113        crServerQueryHWState();
    87114    }
    88115    else {
     
    212239        /* Issue the list as-is */
    213240        cr_server.head_spu->dispatch_table.CallLists( n, type, lists );
    214         crStateQueryHWState();
     241        crServerQueryHWState();
    215242    }
    216243    else {
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