[Spice-commits] vdservice/vdservice.cpp

Christophe Fergau teuf at kemper.freedesktop.org
Thu Feb 23 09:57:26 PST 2012


 vdservice/vdservice.cpp |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 8ca8687fcc29e4c70ec196c3e892b2d58ea704f0
Author: Christophe Fergeau <cfergeau at redhat.com>
Date:   Sun Feb 19 23:57:27 2012 +0100

    Fix = use instead of ==
    
    When checking for ConnectNamedPipe status, the error check uses
    if ( err = ERROR_IO_PENDING) instead of using == which causes this
    error check to always trigger. This commit fixes this, however it
    needs careful testing since the fact that it went unnoticed means
    the code with the bug was working as expected. Maybe changing it
    will cause unexpected regressions.

diff --git a/vdservice/vdservice.cpp b/vdservice/vdservice.cpp
index 29f4c9a..50a70c2 100644
--- a/vdservice/vdservice.cpp
+++ b/vdservice/vdservice.cpp
@@ -893,7 +893,7 @@ bool VDService::launch_agent()
     ZeroMemory(&overlap, sizeof(overlap));
     overlap.hEvent = CreateEvent(NULL, FALSE, FALSE, NULL);
     DWORD err = (ConnectNamedPipe(_pipe_state.pipe, &overlap) ? 0 : GetLastError());
-    if (err = ERROR_IO_PENDING) {
+    if (err == ERROR_IO_PENDING) {
         HANDLE wait_handles[2] = {overlap.hEvent, _agent_proc_info.hProcess};
         DWORD wait_ret = WaitForMultipleObjects(2, wait_handles, FALSE, VD_AGENT_TIMEOUT);
         if (wait_ret != WAIT_OBJECT_0) {


More information about the Spice-commits mailing list