[Pcsclite-cvs-commit] r5364 - /trunk/PCSC/src/winscard.c
rousseau at users.alioth.debian.org
rousseau at users.alioth.debian.org
Tue Oct 26 18:47:46 UTC 2010
Author: rousseau
Date: Tue Oct 26 18:47:38 2010
New Revision: 5364
URL: http://svn.debian.org/wsvn/pcsclite/?sc=1&rev=5364
Log:
SCardDisconnect(): check for card removal in case DISABLE_AUTO_POWER_ON
Modified:
trunk/PCSC/src/winscard.c
Modified: trunk/PCSC/src/winscard.c
URL: http://svn.debian.org/wsvn/pcsclite/trunk/PCSC/src/winscard.c?rev=5364&op=diff
==============================================================================
--- trunk/PCSC/src/winscard.c (original)
+++ trunk/PCSC/src/winscard.c Tue Oct 26 18:47:38 2010
@@ -836,7 +836,18 @@
if (SCARD_UNPOWER_CARD == dwDisposition)
{
rContext->readerState->cardAtrLength = 0;
- rContext->readerState->readerState = SCARD_PRESENT;
+ if (rv == SCARD_S_SUCCESS)
+ rContext->readerState->readerState = SCARD_PRESENT;
+ else
+ {
+ Log3(PCSC_LOG_ERROR, "Error powering down card: %d 0x%04X",
+ rv, rv);
+ if (rv == SCARD_W_REMOVED_CARD)
+ rContext->readerState->readerState = SCARD_ABSENT;
+ else
+ rContext->readerState->readerState =
+ SCARD_PRESENT | SCARD_SWALLOWED;
+ }
Log1(PCSC_LOG_INFO, "Skip card power on");
}
else
More information about the Pcsclite-cvs-commit
mailing list