VirtualBox

Ignore:
Timestamp:
Sep 6, 2019 10:05:11 AM (6 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
133152
Message:

Shared Clipboard: Removed old protocol handling cruft on the host side and added message translation support for serving older Guest Additions. Updated docs / protocol changelog.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/GuestHost/SharedClipboard/clipboard-common.cpp

    r80468 r80623  
    183183        RTMemFree(pEvIt);
    184184    }
     185
     186    pSource->uID          = 0;
     187    pSource->uEventIDNext = 0;
    185188}
    186189
     
    216219
    217220    return NULL;
     221}
     222
     223/**
     224 * Returns the last (newest) event ID which has been registered for an event source.
     225 *
     226 * @returns Last registered event ID, or 0 if not found.
     227 * @param   pSource             Event source to get last registered event from.
     228 */
     229VBOXCLIPBOARDEVENTID SharedClipboardEventGetLast(PSHAREDCLIPBOARDEVENTSOURCE pSource)
     230{
     231    AssertPtrReturn(pSource, 0);
     232    PSHAREDCLIPBOARDEVENT pEvent = RTListGetLast(&pSource->lstEvents, SHAREDCLIPBOARDEVENT, Node);
     233    if (pEvent)
     234        return pEvent->uID;
     235
     236    return 0;
    218237}
    219238
     
    281300        LogFlowFunc(("Event %RU16\n", pEvent->uID));
    282301
     302        RTListNodeRemove(&pEvent->Node);
     303
    283304        SharedClipboardEventDestroy(pEvent);
     305
    284306        RTMemFree(pEvent);
    285 
    286         RTListNodeRemove(&pEvent->Node);
     307        pEvent = NULL;
    287308
    288309        rc = VINF_SUCCESS;
     
    290311    else
    291312        rc = VERR_NOT_FOUND;
    292 
    293     AssertRC(rc);
    294313
    295314    LogFlowFuncLeaveRC(rc);
     
    362381    else
    363382        rc = VERR_NOT_FOUND;
    364 
    365 #ifdef DEBUG_andy
    366     AssertRC(rc);
    367 #endif
    368383
    369384    LogFlowFuncLeaveRC(rc);
     
    787802        RT_CASE_RET_STR(VBOX_SHARED_CLIPBOARD_HOST_MSG_QUIT);
    788803        RT_CASE_RET_STR(VBOX_SHARED_CLIPBOARD_HOST_MSG_READ_DATA);
    789         RT_CASE_RET_STR(VBOX_SHARED_CLIPBOARD_HOST_MSG_FORMATS_WRITE);
     804        RT_CASE_RET_STR(VBOX_SHARED_CLIPBOARD_HOST_MSG_FORMATS_REPORT);
    790805        RT_CASE_RET_STR(VBOX_SHARED_CLIPBOARD_HOST_MSG_URI_TRANSFER_START);
    791806        RT_CASE_RET_STR(VBOX_SHARED_CLIPBOARD_HOST_MSG_URI_ROOT_LIST_HDR_READ);
     
    820835    {
    821836        RT_CASE_RET_STR(VBOX_SHARED_CLIPBOARD_GUEST_FN_GET_HOST_MSG_OLD);
    822         RT_CASE_RET_STR(VBOX_SHARED_CLIPBOARD_GUEST_FN_FORMATS_WRITE);
     837        RT_CASE_RET_STR(VBOX_SHARED_CLIPBOARD_GUEST_FN_FORMATS_REPORT);
    823838        RT_CASE_RET_STR(VBOX_SHARED_CLIPBOARD_GUEST_FN_DATA_READ);
    824839        RT_CASE_RET_STR(VBOX_SHARED_CLIPBOARD_GUEST_FN_DATA_WRITE);
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