mirror of
https://github.com/RPCS3/rpcs3.git
synced 2026-07-09 17:25:18 -06:00
Use std::string_view in pine_server
This commit is contained in:
parent
7a4ec42362
commit
54b8b5399b
17
3rdparty/pine/pine_server.h
vendored
17
3rdparty/pine/pine_server.h
vendored
@ -164,14 +164,17 @@ namespace pine
|
|||||||
return IPCBuffer{ 5, MakeFailIPC(ret_buffer) };
|
return IPCBuffer{ 5, MakeFailIPC(ret_buffer) };
|
||||||
};
|
};
|
||||||
|
|
||||||
const auto write_string = [&](const std::string& str)
|
const auto write_string = [&](std::string_view str)
|
||||||
{
|
{
|
||||||
if (!SafetyChecks(buf_cnt, 0, ret_cnt, str.size() + 1 + sizeof(u32), buf_size))
|
if (!SafetyChecks(buf_cnt, 0, ret_cnt, str.size() + 1 + sizeof(u32), buf_size))
|
||||||
return false;
|
return false;
|
||||||
ToArray(ret_buffer, ::narrow<u32>(str.size() + 1), ret_cnt);
|
ToArray(ret_buffer, ::narrow<u32>(str.size() + 1), ret_cnt);
|
||||||
ret_cnt += sizeof(u32);
|
ret_cnt += sizeof(u32);
|
||||||
memcpy(&ret_buffer[ret_cnt], str.data(), str.size());
|
if (str.size())
|
||||||
ret_cnt += str.size();
|
{
|
||||||
|
std::memcpy(&ret_buffer[ret_cnt], str.data(), str.size());
|
||||||
|
ret_cnt += str.size();
|
||||||
|
}
|
||||||
ret_buffer[ret_cnt++] = '\0';
|
ret_buffer[ret_cnt++] = '\0';
|
||||||
return true;
|
return true;
|
||||||
};
|
};
|
||||||
@ -512,7 +515,7 @@ namespace pine
|
|||||||
*/
|
*/
|
||||||
static inline bool SafetyChecks(usz command_len, usz command_size, usz reply_len, usz reply_size = 0, usz buf_size = MAX_IPC_SIZE - 1)
|
static inline bool SafetyChecks(usz command_len, usz command_size, usz reply_len, usz reply_size = 0, usz buf_size = MAX_IPC_SIZE - 1)
|
||||||
{
|
{
|
||||||
bool res = ((command_len + command_size) > buf_size ||
|
const bool res = ((command_len + command_size) > buf_size ||
|
||||||
(reply_len + reply_size) >= MAX_IPC_RETURN_SIZE);
|
(reply_len + reply_size) >= MAX_IPC_RETURN_SIZE);
|
||||||
if (res) [[unlikely]]
|
if (res) [[unlikely]]
|
||||||
return false;
|
return false;
|
||||||
@ -524,8 +527,8 @@ namespace pine
|
|||||||
pine_server() noexcept
|
pine_server() noexcept
|
||||||
{
|
{
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
WSADATA wsa;
|
WSADATA wsa {};
|
||||||
struct sockaddr_in server;
|
struct sockaddr_in server {};
|
||||||
m_sock = INVALID_SOCKET;
|
m_sock = INVALID_SOCKET;
|
||||||
m_msgsock = INVALID_SOCKET;
|
m_msgsock = INVALID_SOCKET;
|
||||||
|
|
||||||
@ -579,7 +582,7 @@ namespace pine
|
|||||||
fmt::append(m_socket_name, ".%d", slot);
|
fmt::append(m_socket_name, ".%d", slot);
|
||||||
}
|
}
|
||||||
|
|
||||||
struct sockaddr_un server;
|
struct sockaddr_un server {};
|
||||||
|
|
||||||
m_sock = socket(AF_UNIX, SOCK_STREAM, 0);
|
m_sock = socket(AF_UNIX, SOCK_STREAM, 0);
|
||||||
if (m_sock < 0)
|
if (m_sock < 0)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user