From 511c7a89fca8bc9863df589ed700ff5d9543b47c Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Mon, 5 Jan 2009 19:56:52 +0000 Subject: [PATCH] Fix card change detection. --- scd/ChangeLog | 4 ++++ scd/apdu.c | 5 +++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/scd/ChangeLog b/scd/ChangeLog index eb898c185..c93a17a2b 100644 --- a/scd/ChangeLog +++ b/scd/ChangeLog @@ -1,3 +1,7 @@ +2009-01-05 Werner Koch + + * apdu.c (apdu_get_status): Save the last status. + 2008-12-18 Werner Koch * ccid-driver.c (abort_cmd): New. diff --git a/scd/apdu.c b/scd/apdu.c index e14f2b2ca..f92565d7d 100644 --- a/scd/apdu.c +++ b/scd/apdu.c @@ -2735,11 +2735,12 @@ apdu_get_status (int slot, int hang, || !reader_table[slot].any_status ) { reader_table[slot].change_counter++; - /* Make sure that the ATR is invalid so that a reset will be by - activate. */ + /* Make sure that the ATR is invalid so that a reset will be + triggered by activate. */ reader_table[slot].atrlen = 0; } reader_table[slot].any_status = 1; + reader_table[slot].last_status = s; if (status) *status = s;