diff --git a/pcsc-relay/src/lnfc.c b/pcsc-relay/src/lnfc.c index 35f716b..4d88982 100644 --- a/pcsc-relay/src/lnfc.c +++ b/pcsc-relay/src/lnfc.c @@ -171,9 +171,12 @@ static int lnfc_disconnect(driver_data_t *driver_data) if (data) { - nfc_abort_command(data->pndTarget); - nfc_close(data->pndTarget); - nfc_exit(data->context); + if (data->pndTarget) { + nfc_abort_command(data->pndTarget); + nfc_close(data->pndTarget); + } + if (data->context) + nfc_exit(data->context); free(data); }