VirtualBox

Ignore:
Timestamp:
Mar 19, 2014 4:57:33 PM (11 years ago)
Author:
vboxsync
Message:

crOpenGL: new command submission continued

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/HostServices/SharedOpenGL/crserver/crservice.cpp

    r50812 r50827  
    4545static uint32_t g_u32ScreenCount = 0;
    4646static PVM g_pVM = NULL;
     47static uint32_t g_u32fCrHgcmDisabled = 0;
    4748
    4849#ifndef RT_OS_WINDOWS
     
    558559
    559560    NOREF(pvClient);
     561
     562    if (g_u32fCrHgcmDisabled)
     563    {
     564        WARN(("cr hgcm disabled!"));
     565        return;
     566    }
    560567
    561568    Log(("SHARED_CROPENGL svcCall: u32ClientID = %d, fn = %d, cParms = %d, pparms = %d\n", u32ClientID, u32Function, cParms, paParms));
     
    15191526                    if (paParms->u.pointer.size != sizeof (VBOXCRCMDCTL))
    15201527                        WARN(("invalid param size"));
    1521                     return crVBoxServerHgcmDisable();
     1528                    int rc = crVBoxServerHgcmDisable();
     1529                    if (RT_SUCCESS(rc))
     1530                        g_u32fCrHgcmDisabled = 1;
     1531                    else
     1532                        WARN(("crVBoxServerHgcmDisable failed %d", rc));
     1533                    return rc;
    15221534                }
    15231535                case VBOXCRCMDCTL_TYPE_ENABLE:
     
    15261538                        WARN(("invalid param size"));
    15271539                    VBOXCRCMDCTL_ENABLE *pEnable = (VBOXCRCMDCTL_ENABLE*)pCtl;
    1528                     return crVBoxServerHgcmEnable(pEnable->hRHCmd, pEnable->pfnRHCmd);
     1540                    int rc = crVBoxServerHgcmEnable(pEnable->hRHCmd, pEnable->pfnRHCmd);
     1541                    if (RT_SUCCESS(rc))
     1542                        g_u32fCrHgcmDisabled = 0;
     1543                    else
     1544                        WARN(("crVBoxServerHgcmEnable failed %d", rc));
     1545                    return rc;
    15291546                }
    15301547                default:
     
    15361553        }
    15371554        default:
     1555            if (g_u32fCrHgcmDisabled)
     1556            {
     1557                WARN(("cr hgcm disabled!"));
     1558                return VERR_INVALID_STATE;
     1559            }
    15381560            return svcHostCallPerform(u32Function, cParms, paParms);
    15391561    }
     
    15621584        {
    15631585            g_pHelpers = ptable->pHelpers;
     1586
     1587            g_u32fCrHgcmDisabled = 0;
    15641588
    15651589            ptable->cbClient = sizeof (void*);
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