From c74f78ea0852747a05a3a7bc1980ecef7ee05e7a Mon Sep 17 00:00:00 2001 From: mutouyun Date: Sun, 24 Sep 2023 16:52:48 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=9F=E4=B8=80=E5=AD=97=E7=AC=A6=E4=B8=B2?= =?UTF-8?q?=E6=9C=89=E6=95=88=E6=80=A7=E5=88=A4=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/libipc/platform/posix/shm_posix.cpp | 4 ++-- src/libipc/platform/win/shm_win.cpp | 4 ++-- src/libipc/queue.h | 3 ++- src/libipc/shm.cpp | 2 +- src/libipc/sync/condition.cpp | 2 +- src/libipc/sync/mutex.cpp | 2 +- src/libipc/sync/semaphore.cpp | 2 +- 7 files changed, 10 insertions(+), 9 deletions(-) diff --git a/src/libipc/platform/posix/shm_posix.cpp b/src/libipc/platform/posix/shm_posix.cpp index 7ce9042..c111aa5 100644 --- a/src/libipc/platform/posix/shm_posix.cpp +++ b/src/libipc/platform/posix/shm_posix.cpp @@ -45,7 +45,7 @@ namespace ipc { namespace shm { id_t acquire(char const * name, std::size_t size, unsigned mode) { - if (name == nullptr || name[0] == '\0') { + if (!is_valid_string(name)) { ipc::error("fail acquire: name is empty\n"); return nullptr; } @@ -185,7 +185,7 @@ void remove(id_t id) { } void remove(char const * name) { - if (name == nullptr || name[0] == '\0') { + if (!is_valid_string(name)) { ipc::error("fail remove: name is empty\n"); return; } diff --git a/src/libipc/platform/win/shm_win.cpp b/src/libipc/platform/win/shm_win.cpp index 4979e00..75c2a95 100755 --- a/src/libipc/platform/win/shm_win.cpp +++ b/src/libipc/platform/win/shm_win.cpp @@ -28,7 +28,7 @@ namespace ipc { namespace shm { id_t acquire(char const * name, std::size_t size, unsigned mode) { - if (name == nullptr || name[0] == '\0') { + if (!is_valid_string(name)) { ipc::error("fail acquire: name is empty\n"); return nullptr; } @@ -124,7 +124,7 @@ void remove(id_t id) { } void remove(char const * name) { - if (name == nullptr || name[0] == '\0') { + if (!is_valid_string(name)) { ipc::error("fail remove: name is empty\n"); return; } diff --git a/src/libipc/queue.h b/src/libipc/queue.h index f66860b..bb925ce 100755 --- a/src/libipc/queue.h +++ b/src/libipc/queue.h @@ -18,6 +18,7 @@ #include "libipc/utility/log.h" #include "libipc/platform/detail.h" #include "libipc/circ/elem_def.h" +#include "libipc/memory/resource.h" namespace ipc { namespace detail { @@ -29,7 +30,7 @@ protected: template Elems* open(char const * name) { - if (name == nullptr || name[0] == '\0') { + if (!is_valid_string(name)) { ipc::error("fail open waiter: name is empty!\n"); return nullptr; } diff --git a/src/libipc/shm.cpp b/src/libipc/shm.cpp index c8763a8..0845474 100755 --- a/src/libipc/shm.cpp +++ b/src/libipc/shm.cpp @@ -69,7 +69,7 @@ void handle::sub_ref() noexcept { } bool handle::acquire(char const * name, std::size_t size, unsigned mode) { - if (name == nullptr || name[0] == '\0') { + if (!is_valid_string(name)) { ipc::error("fail acquire: name is empty\n"); return false; } diff --git a/src/libipc/sync/condition.cpp b/src/libipc/sync/condition.cpp index b97d09b..36896a7 100644 --- a/src/libipc/sync/condition.cpp +++ b/src/libipc/sync/condition.cpp @@ -50,7 +50,7 @@ bool condition::valid() const noexcept { } bool condition::open(char const *name) noexcept { - if (name == nullptr || name[0] == '\0') { + if (!is_valid_string(name)) { ipc::error("fail condition open: name is empty\n"); return false; } diff --git a/src/libipc/sync/mutex.cpp b/src/libipc/sync/mutex.cpp index 40aad65..91bd0bb 100644 --- a/src/libipc/sync/mutex.cpp +++ b/src/libipc/sync/mutex.cpp @@ -50,7 +50,7 @@ bool mutex::valid() const noexcept { } bool mutex::open(char const *name) noexcept { - if (name == nullptr || name[0] == '\0') { + if (!is_valid_string(name)) { ipc::error("fail mutex open: name is empty\n"); return false; } diff --git a/src/libipc/sync/semaphore.cpp b/src/libipc/sync/semaphore.cpp index 33539f1..e58e8ec 100644 --- a/src/libipc/sync/semaphore.cpp +++ b/src/libipc/sync/semaphore.cpp @@ -48,7 +48,7 @@ bool semaphore::valid() const noexcept { } bool semaphore::open(char const *name, std::uint32_t count) noexcept { - if (name == nullptr || name[0] == '\0') { + if (!is_valid_string(name)) { ipc::error("fail semaphore open: name is empty\n"); return false; }