diff --git a/CMakeLists.txt b/CMakeLists.txt index 7b53a2b815303b399ef35800817e499dade27586..babad017c9d074eefb6908dd46c4f3d997a513d2 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,7 +2,7 @@ project(cellframe-sdk C) cmake_minimum_required(VERSION 3.0) set(CMAKE_C_STANDARD 11) -set(CELLFRAME_SDK_NATIVE_VERSION "2.9-8") +set(CELLFRAME_SDK_NATIVE_VERSION "2.9-9") add_definitions ("-DCELLFRAME_SDK_VERSION=\"${CELLFRAME_SDK_NATIVE_VERSION}\"") set(DAPSDK_MODULES "") message("Cellframe modules: ${CELLFRAME_MODULES}") diff --git a/dap-sdk/net/client/dap_client.c b/dap-sdk/net/client/dap_client.c index 56fb3c785f087f1356392e3299dae0b76d8e07fc..1bf65abff99abba417c9f2720062c76d0eb4c931 100644 --- a/dap-sdk/net/client/dap_client.c +++ b/dap-sdk/net/client/dap_client.c @@ -244,8 +244,6 @@ static void s_go_stage_on_client_worker_unsafe(dap_worker_t * a_worker,void * a_ return; } - - dap_client_stage_t l_cur_stage = l_client_pvt->stage; dap_client_stage_status_t l_cur_stage_status= l_client_pvt->stage_status; if (l_stage_target == l_cur_stage){ diff --git a/dap-sdk/net/client/dap_client_pvt.c b/dap-sdk/net/client/dap_client_pvt.c index 483361c50ee477f89b1d7c73b2de876afbe4b2fe..b33422490e30543d0a385d103e2ef025369f76b7 100644 --- a/dap-sdk/net/client/dap_client_pvt.c +++ b/dap-sdk/net/client/dap_client_pvt.c @@ -875,14 +875,18 @@ static void s_request_response(void * a_response, size_t a_response_size, void * log_it(L_ERROR,"Client internal is NULL for s_request_response"); else log_it(L_ERROR,"Client is NULL for s_request_response"); - + dap_client_pvt_hh_unlock(); return; } l_client_pvt->refs_count--; if (l_client_pvt->is_to_delete){ - if(l_client_pvt->refs_count==0) // Was requested to delete until we was working with request + if(l_client_pvt->refs_count==0) {// Was requested to delete until we was working with request + dap_client_pvt_hh_unlock(); dap_client_delete_unsafe(l_client_pvt->client); // Init delete + return; + } + dap_client_pvt_hh_unlock(); return; }