diff --git a/src/pow_hash.cpp b/src/pow_hash.cpp index 90b23cd..3a97ce8 100644 --- a/src/pow_hash.cpp +++ b/src/pow_hash.cpp @@ -389,11 +389,7 @@ RandomX_Hasher_RPC::RandomX_Hasher_RPC(p2pool* pool) uv_mutex_init_checked(&m_requestMutex); uv_mutex_init_checked(&m_condMutex); - err = uv_cond_init(&m_cond); - if (err) { - LOGERR(1, "failed to create cond, error " << uv_err_name(err)); - panic(); - } + uv_cond_init_checked(&m_cond); err = uv_thread_create(&m_loopThread, loop, this); if (err) { diff --git a/src/util.cpp b/src/util.cpp index 0018079..f109b18 100644 --- a/src/util.cpp +++ b/src/util.cpp @@ -205,6 +205,15 @@ std::istream& operator>>(std::istream& s, hash& h) return s; } +void uv_cond_init_checked(uv_cond_t* cond) +{ + const int result = uv_cond_init(cond); + if (result) { + LOGERR(1, "failed to create conditional variable, error " << uv_err_name(result)); + panic(); + } +} + void uv_mutex_init_checked(uv_mutex_t* mutex) { const int result = uv_mutex_init(mutex); diff --git a/src/uv_util.h b/src/uv_util.h index d1f4fbe..09747b5 100644 --- a/src/uv_util.h +++ b/src/uv_util.h @@ -57,6 +57,7 @@ private: typedef RWLock WriteLock; +void uv_cond_init_checked(uv_cond_t* cond); void uv_mutex_init_checked(uv_mutex_t* mutex); void uv_rwlock_init_checked(uv_rwlock_t* lock); uv_loop_t* uv_default_loop_checked();