diff --git a/scd/command.c b/scd/command.c index 239480bfa..2909330e5 100644 --- a/scd/command.c +++ b/scd/command.c @@ -2340,7 +2340,10 @@ update_reader_status_file (int set_card_removed_flag) /* Set the card removed flag for all current sessions. */ if (vr->any && vr->status == 0 && set_card_removed_flag) - update_card_removed (idx, 1); + { + apdu_close_reader (vr->slot); + update_card_removed (idx, 1); + } vr->any = 1;