VirtualBox

Ignore:
Timestamp:
Jan 27, 2020 5:52:41 PM (5 years ago)
Author:
vboxsync
Message:

Shared Clipboard: Ditched SHCLDATABLOCK.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Additions/WINNT/VBoxTray/VBoxClipboard.cpp

    r82870 r82880  
    362362                    if (pMem)
    363363                    {
    364                         SHCLDATABLOCK dataBlock;
    365                         RT_ZERO(dataBlock);
    366 
    367                         dataBlock.cbData  = cbPrealloc;
    368                         dataBlock.pvData  = pMem;
    369                         dataBlock.uFormat = fFormat;
    370 
    371364                        /* Read the host data to the preallocated buffer. */
    372                         int rc = VbglR3ClipboardReadDataEx(&pCtx->CmdCtx, &dataBlock, &cb);
     365                        int rc = VbglR3ClipboardReadDataEx(&pCtx->CmdCtx, fFormat, pMem, cbPrealloc, &cb);
    373366                        if (RT_SUCCESS(rc))
    374367                        {
     
    395388                                    if (pMem)
    396389                                    {
    397                                         dataBlock.cbData  = cb;
    398                                         dataBlock.pvData  = pMem;
    399 
    400390                                        /* Read the host data to the preallocated buffer. */
    401391                                        uint32_t cbNew = 0;
    402                                         rc = VbglR3ClipboardReadDataEx(&pCtx->CmdCtx, &dataBlock, &cbNew);
     392                                        rc = VbglR3ClipboardReadDataEx(&pCtx->CmdCtx, fFormat, pMem, cb, &cbNew);
    403393                                        if (   RT_SUCCESS(rc)
    404394                                            && cbNew <= cb)
     
    580570                        if (lp != NULL)
    581571                        {
    582                             SHCLDATABLOCK dataBlock;
    583                             RT_ZERO(dataBlock);
    584 
    585                             dataBlock.uFormat = fFormat;
    586                             dataBlock.pvData  = lp;
    587                             dataBlock.cbData  = (uint32_t)GlobalSize(hClip);
    588 
    589                             rc = VbglR3ClipboardWriteDataEx(&pEvent->cmdCtx, &dataBlock);
     572                            rc = VbglR3ClipboardWriteDataEx(&pEvent->cmdCtx, fFormat, lp, (uint32_t)GlobalSize(hClip));
    590573
    591574                            GlobalUnlock(hClip);
     
    605588                        if (uniString != NULL)
    606589                        {
    607                             SHCLDATABLOCK dataBlock;
    608                             RT_ZERO(dataBlock);
    609 
    610                             dataBlock.uFormat = fFormat;
    611                             dataBlock.pvData  = uniString;
    612                             dataBlock.cbData  = ((uint32_t)lstrlenW(uniString) + 1) * 2;
    613 
    614                             rc = VbglR3ClipboardWriteDataEx(&pEvent->cmdCtx, &dataBlock);
     590                            rc = VbglR3ClipboardWriteDataEx(&pEvent->cmdCtx,
     591                                                            fFormat, uniString, ((uint32_t)lstrlenW(uniString) + 1) * 2);
    615592
    616593                            GlobalUnlock(hClip);
     
    631608                        {
    632609                            LPVOID lp = GlobalLock(hClip);
    633 
    634610                            if (lp != NULL)
    635611                            {
    636                                 SHCLDATABLOCK dataBlock;
    637                                 RT_ZERO(dataBlock);
    638 
    639                                 dataBlock.uFormat = fFormat;
    640                                 dataBlock.pvData  = lp;
    641                                 dataBlock.cbData  = (uint32_t)GlobalSize(hClip);
    642 
    643                                 rc = VbglR3ClipboardWriteDataEx(&pEvent->cmdCtx, &dataBlock);
     612                                rc = VbglR3ClipboardWriteDataEx(&pEvent->cmdCtx, fFormat, lp, (uint32_t)GlobalSize(hClip));
    644613
    645614                                GlobalUnlock(hClip);
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