diff --git a/dap-sdk/net/core/dap_timerfd.c b/dap-sdk/net/core/dap_timerfd.c
index 44c26c61fe405ff1ea42f2225b91e3ec55ad2ba2..fd294b25a146f85bbf60bdb2e8c817dc62fb6450 100644
--- a/dap-sdk/net/core/dap_timerfd.c
+++ b/dap-sdk/net/core/dap_timerfd.c
@@ -87,8 +87,13 @@ void __stdcall TimerAPCb(void* arg, DWORD low, DWORD high) {  // Timer high valu
 dap_timerfd_t* dap_timerfd_start_on_worker(dap_worker_t * a_worker, uint64_t a_timeout_ms, dap_timerfd_callback_t a_callback, void *a_callback_arg)
 {
     dap_timerfd_t* l_timerfd = dap_timerfd_create( a_timeout_ms, a_callback, a_callback_arg);
-    dap_worker_add_events_socket(l_timerfd->events_socket, a_worker);
-    return l_timerfd;
+    if(l_timerfd){
+        dap_worker_add_events_socket(l_timerfd->events_socket, a_worker);
+        return l_timerfd;
+    }else{
+        log_it(L_CRITICAL,"Can't create timer");
+        return NULL;
+    }
 }
 
 /**
@@ -115,6 +120,8 @@ dap_timerfd_t* dap_timerfd_start_on_proc_thread(dap_proc_thread_t * a_proc_threa
 dap_timerfd_t* dap_timerfd_create(uint64_t a_timeout_ms, dap_timerfd_callback_t a_callback, void *a_callback_arg)
 {
     dap_timerfd_t *l_timerfd = DAP_NEW(dap_timerfd_t);
+    if(!l_timerfd)
+        return NULL;
     // create events_socket for timer file descriptor
     dap_events_socket_callbacks_t l_s_callbacks;
     memset(&l_s_callbacks,0,sizeof (l_s_callbacks));