Changeset 86710 in vbox
- Timestamp:
- Oct 26, 2020 2:35:44 PM (4 years ago)
- svn:sync-xref-src-repo-rev:
- 141094
- Location:
- trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/GuestHost/SharedClipboard-x11.h
r85833 r86710 35 35 36 36 #include <VBox/GuestHost/SharedClipboard.h> 37 38 /** Enables the Xt busy / update handling. */ 39 #define VBOX_WITH_SHARED_CLIPBOARD_XT_BUSY 1 37 40 38 41 /** … … 117 120 /** The first XFixes event number. */ 118 121 int fixesEventBase; 122 #ifdef VBOX_WITH_SHARED_CLIPBOARD_XT_BUSY 119 123 /** XtGetSelectionValue on some versions of libXt isn't re-entrant 120 124 * so block overlapping requests on this flag. */ … … 124 128 * before processing the callback event. */ 125 129 bool fXtNeedsUpdate; 130 #endif 126 131 } SHCLX11CTX, *PSHCLX11CTX; 127 132 -
trunk/src/VBox/GuestHost/SharedClipboard/clipboard-x11.cpp
r86702 r86710 663 663 LogFlowFuncEnter(); 664 664 665 #ifdef VBOX_WITH_SHARED_CLIPBOARD_XT_BUSY 665 666 pCtx->fXtBusy = false; 666 667 if (pCtx->fXtNeedsUpdate) … … 671 672 return; 672 673 } 674 #endif 673 675 674 676 if (paIdxFmtTargets == NULL) … … 769 771 { 770 772 #ifndef TESTCASE 773 774 # ifdef VBOX_WITH_SHARED_CLIPBOARD_XT_BUSY 771 775 LogFlowFunc(("fXtBusy=%RTbool\n", pCtx->fXtBusy)); 772 773 776 if (pCtx->fXtBusy) 774 777 { … … 778 781 779 782 pCtx->fXtBusy = true; 783 # endif 784 780 785 XtGetSelectionValue(pCtx->pWidget, 781 786 clipGetAtom(pCtx, "CLIPBOARD"), … … 1110 1115 pCtx->pFrontend = pParent; 1111 1116 1117 #ifdef VBOX_WITH_SHARED_CLIPBOARD_XT_BUSY 1112 1118 pCtx->fXtBusy = false; 1113 1119 pCtx->fXtNeedsUpdate = false; 1120 #endif 1114 1121 1115 1122 LogFlowFuncLeaveRC(VINF_SUCCESS); … … 1782 1789 size_t cbDst = 0; 1783 1790 1791 #ifdef VBOX_WITH_SHARED_CLIPBOARD_XT_BUSY 1784 1792 PSHCLX11CTX pCtx = pReq->pCtx; 1785 1793 AssertPtr(pReq->pCtx); … … 1788 1796 if (pCtx->fXtNeedsUpdate) 1789 1797 clipQueryX11Formats(pCtx); 1798 #endif 1790 1799 1791 1800 if (pvSrc == NULL) … … 2040 2049 int rc = VERR_NO_DATA; /* VBox thinks we have data and we don't. */ 2041 2050 2051 #ifdef VBOX_WITH_SHARED_CLIPBOARD_XT_BUSY 2042 2052 const bool fXtBusy = pCtx->fXtBusy; 2043 2053 pCtx->fXtBusy = true; … … 2047 2057 rc = VERR_TRY_AGAIN; 2048 2058 } 2049 else if (pReq->uFmtVBox & VBOX_SHCL_FMT_UNICODETEXT) 2059 else 2060 #endif 2061 if (pReq->uFmtVBox & VBOX_SHCL_FMT_UNICODETEXT) 2050 2062 { 2051 2063 pReq->idxFmtX11 = pCtx->idxFmtText; … … 2087 2099 else 2088 2100 { 2101 #ifdef VBOX_WITH_SHARED_CLIPBOARD_XT_BUSY 2089 2102 pCtx->fXtBusy = false; 2090 2103 #endif 2091 2104 rc = VERR_NOT_IMPLEMENTED; 2092 2105 }
Note:
See TracChangeset
for help on using the changeset viewer.