Changeset 85722 in vbox
- Timestamp:
- Aug 12, 2020 5:34:49 PM (4 years ago)
- Location:
- trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/HostServices/DragAndDropSvc.h
r85712 r85722 925 925 { 926 926 CB_MAGIC_DND_CONNECT = VBOX_DND_CB_MAGIC_MAKE(GUEST_DND_CONNECT, 0), 927 CB_MAGIC_DND_REPORT_FEATURES = VBOX_DND_CB_MAGIC_MAKE(GUEST_DND_REPORT_FEATURES, 0), 927 928 CB_MAGIC_DND_HG_GET_NEXT_HOST_MSG = VBOX_DND_CB_MAGIC_MAKE(GUEST_DND_GET_NEXT_HOST_MSG, 0), 928 929 CB_MAGIC_DND_HG_ACK_OP = VBOX_DND_CB_MAGIC_MAKE(GUEST_DND_HG_ACK_OP, 0), … … 946 947 } VBOXDNDCBHEADERDATA, *PVBOXDNDCBHEADERDATA; 947 948 948 typedef struct VBOXDNDCBCONNECT MSGDATA949 typedef struct VBOXDNDCBCONNECTDATA 949 950 { 950 951 /** Callback data header. */ … … 952 953 /** Protocol version to use. 953 954 * Deprecated since VBox 6.1.x. Do not use / rely on it anymore. */ 954 uint32_t uProtocol; 955 uint32_t uFlags; 956 } VBOXDNDCBCONNECTMSGDATA, *PVBOXDNDCBCONNECTMSGDATA; 955 uint32_t uProtocolVersion; 956 /** Connection flags; currently unused. */ 957 uint32_t fFlags; 958 } VBOXDNDCBCONNECTDATA, *PVBOXDNDCBCONNECTDATA; 959 960 typedef struct VBOXDNDCBREPORTFEATURESDATA 961 { 962 /** Callback data header. */ 963 VBOXDNDCBHEADERDATA hdr; 964 uint32_t fGuestFeatures0; 965 } VBOXDNDCBREPORTFEATURESDATA, *PVBOXDNDCBREPORTFEATURESDATA; 957 966 958 967 typedef struct VBOXDNDCBDISCONNECTMSGDATA -
trunk/src/VBox/HostServices/DragAndDrop/VBoxDragAndDropSvc.cpp
r85714 r85722 605 605 ASSERT_GUEST_BREAK(cParms >= 2); 606 606 607 VBOXDNDCBCONNECT MSGDATA data;607 VBOXDNDCBCONNECTDATA data; 608 608 RT_ZERO(data); 609 data.hdr.uMagic = CB_MAGIC_DND_CONNECT; 609 610 610 611 rc = HGCMSvcGetU32(&paParms[idxParm++], &data.hdr.uContextID); \ 611 612 ASSERT_GUEST_RC_BREAK(rc); 612 rc = HGCMSvcGetU32(&paParms[idxParm++], &data.uProtocol );613 ASSERT_GUEST_RC_BREAK(rc); 614 rc = HGCMSvcGetU32(&paParms[idxParm], &data. uFlags);613 rc = HGCMSvcGetU32(&paParms[idxParm++], &data.uProtocolVersion); 614 ASSERT_GUEST_RC_BREAK(rc); 615 rc = HGCMSvcGetU32(&paParms[idxParm], &data.fFlags); 615 616 ASSERT_GUEST_RC_BREAK(rc); 616 617 … … 618 619 619 620 /* Make sure we're only setting a protocl version we're supporting on the host. */ 620 if (data.uProtocol > uProtocolVer)621 data.uProtocol = uProtocolVer;622 623 pClient->uProtocolVerDeprecated = data.uProtocol ;621 if (data.uProtocolVersion > uProtocolVer) 622 data.uProtocolVersion = uProtocolVer; 623 624 pClient->uProtocolVerDeprecated = data.uProtocolVersion; 624 625 625 626 /* Return the highest protocol version we're supporting. */ 626 627 AssertBreak(idxParm); 627 628 ASSERT_GUEST_BREAK(idxParm); 628 paParms[idxParm - 1].u.uint32 = data.uProtocol ;629 paParms[idxParm - 1].u.uint32 = data.uProtocolVersion; 629 630 630 631 LogFlowFunc(("Client %RU32 is now using protocol v%RU32\n", … … 638 639 LogFlowFunc(("GUEST_DND_REPORT_FEATURES\n")); 639 640 rc = clientReportFeatures(pClient, callHandle, cParms, paParms); 641 if (RT_SUCCESS(rc)) 642 { 643 VBOXDNDCBREPORTFEATURESDATA data; 644 RT_ZERO(data); 645 data.hdr.uMagic = CB_MAGIC_DND_REPORT_FEATURES; 646 647 data.fGuestFeatures0 = pClient->fGuestFeatures0; 648 /* fGuestFeatures1 is not used yet. */ 649 650 /* Don't touch initial rc. */ 651 int rc2 = m_SvcCtx.pfnHostCallback(m_SvcCtx.pvHostData, u32Function, &data, sizeof(data)); 652 AssertRC(rc2); 653 } 640 654 break; 641 655 }
Note:
See TracChangeset
for help on using the changeset viewer.