[Pcsclite-cvs-commit] r3288 - /trunk/PCSC/src/winscard_clnt.c

rousseau at users.alioth.debian.org rousseau at users.alioth.debian.org
Tue Jan 20 15:18:44 UTC 2009


Author: rousseau
Date: Tue Jan 20 15:18:44 2009
New Revision: 3288

URL: http://svn.debian.org/wsvn/pcsclite/?sc=1&rev=3288
Log:
SCardCancel(): use StatSynchronizeContext() to send an event to the
waiting/blocked thread

Closes: [#311342] SCardCancel does not cancel an outstanding SCardGetStatusChange

Modified:
    trunk/PCSC/src/winscard_clnt.c

Modified: trunk/PCSC/src/winscard_clnt.c
URL: http://svn.debian.org/wsvn/pcsclite/trunk/PCSC/src/winscard_clnt.c?rev=3288&op=diff
==============================================================================
--- trunk/PCSC/src/winscard_clnt.c (original)
+++ trunk/PCSC/src/winscard_clnt.c Tue Jan 20 15:18:44 2009
@@ -3455,6 +3455,7 @@
 LONG SCardCancel(SCARDCONTEXT hContext)
 {
 	LONG dwContextIndex;
+	LONG rv = SCARD_S_SUCCESS;
 
 	PROFILE_START
 
@@ -3468,9 +3469,12 @@
 	 */
 	psContextMap[dwContextIndex].contextBlockStatus = BLOCK_STATUS_RESUME;
 
-	PROFILE_END(SCARD_S_SUCCESS)
-
-	return SCARD_S_SUCCESS;
+	if (StatSynchronizeContext(hContext))
+		rv = SCARD_F_INTERNAL_ERROR;
+
+	PROFILE_END(rv)
+
+	return rv;
 }
 
 /**




More information about the Pcsclite-cvs-commit mailing list