From 96fb53be8ff4da6dac72679a7a1aa517c09faabd Mon Sep 17 00:00:00 2001 From: Robbert van der Helm Date: Mon, 12 Jul 2021 14:00:48 +0200 Subject: [PATCH] Fix the CAS in the XDND check Oops. We were doing the opposite of what we wanted, which caused the first drag to always fail. --- src/wine-host/xdnd-proxy.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/wine-host/xdnd-proxy.cpp b/src/wine-host/xdnd-proxy.cpp index 15dbe52a..97b3f233 100644 --- a/src/wine-host/xdnd-proxy.cpp +++ b/src/wine-host/xdnd-proxy.cpp @@ -192,7 +192,7 @@ void WineXdndProxy::begin_xdnd(const boost::container::small_vector_base< // NOTE: Needed for a quirk in MT-PowerDrumkit bool expected = false; - if (drag_active.compare_exchange_strong(expected, true)) { + if (!drag_active.compare_exchange_strong(expected, true)) { throw std::runtime_error("A drag-and-drop operation is already active"); }