VirtualBox

Changeset 51141 in vbox for trunk/src/VBox/Main/src-client


Ignore:
Timestamp:
Apr 25, 2014 12:51:03 PM (11 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
93459
Message:

crOpenGL: crcmd enhancements & fixes; osx deadlock fix; temporary disabled crcmd for testing

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Main/src-client/DisplayImpl.cpp

    r51121 r51141  
    36593659    pData->aParms[4].u.uint32 = height;
    36603660
    3661     return crCtlSubmitSync(&pData->Hdr, cbData);
     3661    return crCtlSubmitSyncIfHasDataForScreen(aScreenId, &pData->Hdr, cbData);
    36623662}
    36633663#endif
     
    45184518    }
    45194519    return rc;
     4520}
     4521
     4522int Display::crCtlSubmitSyncIfHasDataForScreen(uint32_t u32ScreenID, struct VBOXCRCMDCTL* pCmd, uint32_t cbCmd)
     4523{
     4524    if (mCrOglCallbacks.pfnHasDataForScreen(u32ScreenID))
     4525        return crCtlSubmitSync(pCmd, cbCmd);
     4526
     4527    VBOXCRCMDCTL* pCmdCopy = (VBOXCRCMDCTL*)RTMemAlloc(cbCmd);
     4528    if (!pCmdCopy)
     4529    {
     4530        LogRel(("RTMemAlloc failed\n"));
     4531        return VERR_NO_MEMORY;
     4532    }
     4533
     4534    memcpy(pCmdCopy, pCmd, cbCmd);
     4535
     4536    int rc = crCtlSubmit(pCmdCopy, cbCmd, displayCrCmdFree, pCmdCopy);
     4537    if (RT_FAILURE(rc))
     4538    {
     4539        LogRel(("crCtlSubmit failed %d\n", rc));
     4540        RTMemFree(pCmdCopy);
     4541        return rc;
     4542    }
     4543
     4544    return VINF_SUCCESS;
    45204545}
    45214546
Note: See TracChangeset for help on using the changeset viewer.

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