From 9b06633c811e8815c07d744f20b45405cb082367 Mon Sep 17 00:00:00 2001 From: NIIBE Yutaka Date: Thu, 26 Jan 2017 19:32:51 +0900 Subject: [PATCH] scd: Fix APP reference counting. * scd/app.c (scd_update_reader_status_file): Don't call another release_application_internal. * scd/command.c (open_card_with_request): Don't require APPTYPE != NULL. Signed-off-by: NIIBE Yutaka --- scd/app.c | 1 - scd/command.c | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/scd/app.c b/scd/app.c index 88a38010d..b10a452d6 100644 --- a/scd/app.c +++ b/scd/app.c @@ -1049,7 +1049,6 @@ scd_update_reader_status_file (void) { log_debug ("Removal of a card: %d\n", a->slot); apdu_close_reader (a->slot); - release_application_internal (a); deallocate_app (a); } else diff --git a/scd/command.c b/scd/command.c index 8c7ca20a6..26f8630fb 100644 --- a/scd/command.c +++ b/scd/command.c @@ -221,7 +221,7 @@ open_card_with_request (ctrl_t ctrl, const char *apptype, const char *serialno) /* If we are already initialized for one specific application we need to check that the client didn't requested a specific application different from the one in use before we continue. */ - if (apptype && ctrl->app_ctx) + if (ctrl->app_ctx) return check_application_conflict (apptype, ctrl->app_ctx); if (serialno)