diff --git a/src/bankd/bankd_main.c b/src/bankd/bankd_main.c index 94227e3..09a9e1d 100644 --- a/src/bankd/bankd_main.c +++ b/src/bankd/bankd_main.c @@ -411,6 +411,8 @@ static void handle_sig_mapdel(int sig) { LOGW(g_worker, "SIGMAPDEL received: Main thread informs us our map is gone\n"); OSMO_ASSERT(sig == SIGMAPDEL); + g_worker->slot.bank_id = 0xffff; + g_worker->slot.slot_nr = 0xffff; worker_set_state(g_worker, BW_ST_CONN_CLIENT_UNMAPPED); } @@ -852,6 +854,9 @@ static void *worker_main(void *arg) /* push cleanup helper */ pthread_cleanup_push(&worker_cleanup, g_worker); + g_worker->slot.bank_id = 0xffff; + g_worker->slot.slot_nr = 0xffff; + /* we continuously perform the same loop here, recycling the worker thread * once the client connection is gone or we have some trouble with the card/reader */ while (1) {