From 67904abd29232ce8b8ed4f890f9e758caa6c5895 Mon Sep 17 00:00:00 2001 From: Lynix Date: Tue, 13 Feb 2024 17:17:04 +0100 Subject: [PATCH] Replace Warning string concatenation by WarningFmt --- .../Nazara/VulkanRenderer/Wrapper/DeviceMemory.inl | 2 +- plugins/Assimp/CustomStream.cpp | 2 +- plugins/Assimp/Plugin.cpp | 2 +- src/Nazara/Core/Mesh.cpp | 2 +- src/Nazara/Core/VertexDeclaration.cpp | 4 ++-- src/Nazara/Graphics/TextSprite.cpp | 2 +- src/Nazara/Network/Linux/SocketPollerImpl.cpp | 5 +++-- src/Nazara/Network/Posix/IpAddressImpl.cpp | 2 +- src/Nazara/Network/Posix/SocketImpl.cpp | 10 +++++----- src/Nazara/Network/Posix/SocketPollerImpl.cpp | 2 +- src/Nazara/Network/UdpSocket.cpp | 4 ++-- src/Nazara/Network/Win32/IpAddressImpl.cpp | 4 ++-- src/Nazara/Network/Win32/SocketImpl.cpp | 12 +++++++++--- src/Nazara/Network/Win32/SocketPollerImpl.cpp | 2 +- src/Nazara/OpenGLRenderer/OpenGLRenderer.cpp | 6 +++--- src/Nazara/OpenGLRenderer/Utils_OpenGLRenderer.cpp | 4 +++- src/Nazara/OpenGLRenderer/Wrapper/WGL/WGLContext.cpp | 2 +- src/Nazara/TextRenderer/Font.cpp | 2 +- src/Nazara/VulkanRenderer/Utils_VulkanRenderer.cpp | 6 ++++-- src/Nazara/VulkanRenderer/VulkanSwapchain.cpp | 2 +- 20 files changed, 44 insertions(+), 33 deletions(-) diff --git a/include/Nazara/VulkanRenderer/Wrapper/DeviceMemory.inl b/include/Nazara/VulkanRenderer/Wrapper/DeviceMemory.inl index c0e4d196e..92d2938e9 100644 --- a/include/Nazara/VulkanRenderer/Wrapper/DeviceMemory.inl +++ b/include/Nazara/VulkanRenderer/Wrapper/DeviceMemory.inl @@ -40,7 +40,7 @@ namespace Nz typeMask <<= 1; } - NazaraErrorFmt("failed to find a memory type suitable for typeBits: {0} and properties: 0x{1}", typeBits, NumberToString(properties, 16)); + NazaraErrorFmt("failed to find a memory type suitable for typeBits: {0} and properties: {1:#x}", typeBits, properties); return false; } diff --git a/plugins/Assimp/CustomStream.cpp b/plugins/Assimp/CustomStream.cpp index 74bf17ccf..9f1f7f2a5 100644 --- a/plugins/Assimp/CustomStream.cpp +++ b/plugins/Assimp/CustomStream.cpp @@ -44,7 +44,7 @@ aiReturn StreamSeek(aiFile* file, size_t offset, aiOrigin origin) break; } - NazaraWarning("Unhandled aiOrigin enum (value: 0x" + std::string(origin, 16) + ')'); + NazaraWarningFmt("Unhandled aiOrigin enum (value: {0:#x})", Nz::UnderlyingCast(origin)); return aiReturn_FAILURE; } diff --git a/plugins/Assimp/Plugin.cpp b/plugins/Assimp/Plugin.cpp index a74f7e3b4..30105a572 100644 --- a/plugins/Assimp/Plugin.cpp +++ b/plugins/Assimp/Plugin.cpp @@ -719,7 +719,7 @@ std::shared_ptr ProcessSubMesh(const std::filesystem::path& originP break; default: - NazaraWarning("Assimp texture map mode 0x" + Nz::NumberToString(mapMode[0], 16) + " not handled"); + NazaraWarningFmt("Assimp texture map mode {0:#x} not handled", Nz::UnderlyingCast(mapMode[0])); break; } diff --git a/src/Nazara/Core/Mesh.cpp b/src/Nazara/Core/Mesh.cpp index 6597a70e4..21376feac 100644 --- a/src/Nazara/Core/Mesh.cpp +++ b/src/Nazara/Core/Mesh.cpp @@ -588,7 +588,7 @@ namespace Nz if (matIndex >= matCount) { data.subMesh->SetMaterialIndex(0); // To prevent a crash - NazaraWarning("SubMesh " + PointerToString(data.subMesh.get()) + " material index is over mesh new material count (" + NumberToString(matIndex) + " >= " + NumberToString(matCount) + "), setting it to first material"); + NazaraWarningFmt("SubMesh {0} material index is over mesh new material count ({1} >= {2}), setting it to first material", fmt::ptr(data.subMesh.get()), matIndex, matCount); } } #endif diff --git a/src/Nazara/Core/VertexDeclaration.cpp b/src/Nazara/Core/VertexDeclaration.cpp index 13c6e3276..af1831999 100644 --- a/src/Nazara/Core/VertexDeclaration.cpp +++ b/src/Nazara/Core/VertexDeclaration.cpp @@ -44,8 +44,8 @@ namespace Nz m_components.reserve(components.size()); for (const ComponentEntry& entry : components) { - NazaraAssert(IsTypeSupported(entry.type), "Component type 0x" + NumberToString(UnderlyingCast(entry.type), 16) + " is not supported by vertex declarations"); - NazaraAssert(entry.componentIndex == 0 || entry.component == VertexComponent::Userdata, "Only userdata components can have non-zero component indexes"); + NazaraAssertFmt(IsTypeSupported(entry.type), "Component type {0:#x} is not supported by vertex declarations", UnderlyingCast(entry.type)); + NazaraAssert(entry.componentIndex == 0 || entry.component == VertexComponent::Userdata, "only userdata components can have non-zero component indexes"); if (entry.component != VertexComponent::Unused) { diff --git a/src/Nazara/Graphics/TextSprite.cpp b/src/Nazara/Graphics/TextSprite.cpp index 3c4dc83f3..e6f5fad84 100644 --- a/src/Nazara/Graphics/TextSprite.cpp +++ b/src/Nazara/Graphics/TextSprite.cpp @@ -231,7 +231,7 @@ namespace Nz { assert(m_atlases.find(atlas) != m_atlases.end()); - NazaraWarning("TextSprite " + PointerToString(this) + " has been cleared because atlas " + PointerToString(atlas) + " has been invalidated (cleared or released)"); + NazaraWarningFmt("TextSprite {0} has been cleared because atlas {1} has been invalidated (cleared or released)", fmt::ptr(this), fmt::ptr(atlas)); Clear(); } diff --git a/src/Nazara/Network/Linux/SocketPollerImpl.cpp b/src/Nazara/Network/Linux/SocketPollerImpl.cpp index 74cbba0cd..cf1277c15 100644 --- a/src/Nazara/Network/Linux/SocketPollerImpl.cpp +++ b/src/Nazara/Network/Linux/SocketPollerImpl.cpp @@ -79,7 +79,7 @@ namespace Nz m_sockets.erase(socket); if (epoll_ctl(m_handle, EPOLL_CTL_DEL, socket, nullptr) != 0) - NazaraWarning("An error occured while removing socket from epoll structure (errno " + NumberToString(errno) + ": " + Error::GetLastSystemError() + ')'); + NazaraWarningFmt("an error occured while removing socket from epoll structure (errno {0}: {1})", errno, Error::GetLastSystemError()); } unsigned int SocketPollerImpl::Wait(int msTimeout, SocketError* error) @@ -116,7 +116,8 @@ namespace Nz } else { - NazaraWarning("Descriptor " + NumberToString(m_events[i].data.fd) + " was returned by epoll without EPOLLIN nor EPOLLOUT flags (events: 0x" + NumberToString(m_events[i].events, 16) + ')'); + // static_cast is required because the field are packed and cannot be taken by reference + NazaraWarningFmt("Descriptor {0} was returned by epoll without EPOLLIN nor EPOLLOUT flags (events: {1:#x}", static_cast(m_events[i].data.fd), static_cast(m_events[i].events)); activeSockets--; } } diff --git a/src/Nazara/Network/Posix/IpAddressImpl.cpp b/src/Nazara/Network/Posix/IpAddressImpl.cpp index bd577767b..88ebf3c22 100644 --- a/src/Nazara/Network/Posix/IpAddressImpl.cpp +++ b/src/Nazara/Network/Posix/IpAddressImpl.cpp @@ -254,7 +254,7 @@ namespace Nz return ResolveError::TemporaryFailure; } - NazaraWarning("Unhandled EAI error: " + Error::GetLastSystemError(error) + " (" + NumberToString(error) + ") as " + gai_strerror(error)); + NazaraWarningFmt("unhandled EAI error: {0} ({1}) as {2}", Error::GetLastSystemError(error), error, gai_strerror(error)); return ResolveError::Unknown; } } diff --git a/src/Nazara/Network/Posix/SocketImpl.cpp b/src/Nazara/Network/Posix/SocketImpl.cpp index 14ee65684..e9b111ab1 100644 --- a/src/Nazara/Network/Posix/SocketImpl.cpp +++ b/src/Nazara/Network/Posix/SocketImpl.cpp @@ -92,7 +92,7 @@ namespace Nz NazaraAssert(handle != InvalidHandle, "Invalid handle"); if (close(handle) == -1) - NazaraWarning("Failed to close socket: " + Error::GetLastSystemError(errno)); + NazaraWarningFmt("failed to close socket: {0}", Error::GetLastSystemError(errno)); } void SocketImpl::ClearErrorCode(SocketHandle handle) @@ -101,7 +101,7 @@ namespace Nz SocketError error; if (GetLastError(handle, &error) != SocketError::NoError) - NazaraWarning(std::string("Failed to clear socket error code: ") + ErrorToString(error)); + NazaraWarningFmt("failed to clear socket error code: {0}", ErrorToString(error)); } SocketState SocketImpl::Connect(SocketHandle handle, const IpAddress& address, SocketError* error) @@ -431,7 +431,7 @@ namespace Nz return SocketState::Connected; else { - NazaraWarning("Socket " + std::to_string(handle) + " was returned by poll without POLLOUT nor error events (events: 0x" + NumberToString(descriptor.revents, 16) + ')'); + NazaraWarningFmt("socket {0} was returned by poll without POLLOUT nor error events (events: {1:#x})", handle, descriptor.revents); return SocketState::NotConnected; } } @@ -964,7 +964,7 @@ namespace Nz case EALREADY: case EISCONN: case EWOULDBLOCK: - NazaraWarning("Internal error occurred: " + Error::GetLastSystemError(error) + " (" + NumberToString(error)+')'); + NazaraWarningFmt("internal error occurred: {0} ({1})", Error::GetLastSystemError(error), error); return SocketError::Internal; case EADDRNOTAVAIL: @@ -1010,7 +1010,7 @@ namespace Nz return SocketError::TimedOut; } - NazaraWarning("Unhandled POSIX error: " + Error::GetLastSystemError(error) + " (" + NumberToString(error) + ')'); + NazaraWarningFmt("unhandled POSIX error: {0} ({1})", Error::GetLastSystemError(error), error); return SocketError::Unknown; } diff --git a/src/Nazara/Network/Posix/SocketPollerImpl.cpp b/src/Nazara/Network/Posix/SocketPollerImpl.cpp index a742b9473..6b75735ea 100644 --- a/src/Nazara/Network/Posix/SocketPollerImpl.cpp +++ b/src/Nazara/Network/Posix/SocketPollerImpl.cpp @@ -104,7 +104,7 @@ namespace Nz } else { - NazaraWarning("Socket " + NumberToString(entry.fd) + " was returned by poll without POLLRDNORM nor POLLWRNORM events (events: 0x" + NumberToString(entry.revents, 16) + ')'); + NazaraWarningFmt("Socket {0} was returned by poll without POLLRDNORM nor POLLWRNORM events (events: {1:#x})", entry.fd, entry.revents); activeSockets--; } diff --git a/src/Nazara/Network/UdpSocket.cpp b/src/Nazara/Network/UdpSocket.cpp index 1403c015c..0e2b54cfa 100644 --- a/src/Nazara/Network/UdpSocket.cpp +++ b/src/Nazara/Network/UdpSocket.cpp @@ -187,14 +187,14 @@ namespace Nz if (!NetPacket::DecodeHeader(packet->GetConstData(), &packetSize, &netCode)) { m_lastError = SocketError::Packet; - NazaraWarning("Invalid header data"); + NazaraWarning("invalid header data"); return false; } if (packetSize != received) { m_lastError = SocketError::Packet; - NazaraWarning("Invalid packet size (packet size is " + NumberToString(packetSize) + " bytes, received " + NumberToString(received) + " bytes)"); + NazaraWarningFmt("Invalid packet size (packet size is {0} bytes, received {1} bytes)", packetSize, received); return false; } diff --git a/src/Nazara/Network/Win32/IpAddressImpl.cpp b/src/Nazara/Network/Win32/IpAddressImpl.cpp index b851935ad..c3aded829 100644 --- a/src/Nazara/Network/Win32/IpAddressImpl.cpp +++ b/src/Nazara/Network/Win32/IpAddressImpl.cpp @@ -272,7 +272,7 @@ namespace Nz } default: - NazaraInternalError("Unhandled ip protocol (0x" + NumberToString(UnderlyingCast(ipAddress.GetProtocol())) + ')'); + NazaraInternalErrorFmt("unhandled ip protocol ({0:#x})", UnderlyingCast(ipAddress.GetProtocol())); break; } } @@ -347,7 +347,7 @@ namespace Nz return ResolveError::TemporaryFailure; } - NazaraWarning("Unhandled WinSock error: " + Error::GetLastSystemError(error) + " (" + NumberToString(error) + ')'); + NazaraWarningFmt("unhandled WinSock error: {0} ({1})", Error::GetLastSystemError(error), error); return ResolveError::Unknown; } } diff --git a/src/Nazara/Network/Win32/SocketImpl.cpp b/src/Nazara/Network/Win32/SocketImpl.cpp index cc76c2474..e0e2f0983 100644 --- a/src/Nazara/Network/Win32/SocketImpl.cpp +++ b/src/Nazara/Network/Win32/SocketImpl.cpp @@ -102,7 +102,10 @@ namespace Nz NazaraAssert(handle != InvalidHandle, "Invalid handle"); if (closesocket(handle) == SOCKET_ERROR) - NazaraWarning("Failed to close socket: " + Error::GetLastSystemError(WSAGetLastError())); + { + int lastError = WSAGetLastError(); + NazaraWarningFmt("failed to close socket: {0} ({1})", Error::GetLastSystemError(lastError), lastError); + } } void SocketImpl::ClearErrorCode(SocketHandle handle) @@ -110,7 +113,10 @@ namespace Nz NazaraAssert(handle != InvalidHandle, "Invalid handle"); if (GetLastError(handle, nullptr) == SocketError::Internal) - NazaraWarning("Failed to clear socket error code: " + Error::GetLastSystemError(WSAGetLastError())); + { + int lastError = WSAGetLastError(); + NazaraWarningFmt("failed to clear socket error code: {0} ({1})", Error::GetLastSystemError(lastError), lastError); + } } SocketState SocketImpl::Connect(SocketHandle handle, const IpAddress& address, SocketError* error) @@ -164,7 +170,7 @@ namespace Nz return false; } - NazaraDebug("Initialized Windows Socket " + NumberToString(LOBYTE(s_WSA.wVersion)) + '.' + NumberToString(HIBYTE(s_WSA.wVersion)) + " (" + std::string(s_WSA.szDescription) + ')'); + NazaraDebug("Initialized Windows Socket {0}.{1} ({2})", LOBYTE(s_WSA.wVersion), HIBYTE(s_WSA.wVersion), s_WSA.szDescription); return true; } diff --git a/src/Nazara/Network/Win32/SocketPollerImpl.cpp b/src/Nazara/Network/Win32/SocketPollerImpl.cpp index a55848acd..e7b458544 100644 --- a/src/Nazara/Network/Win32/SocketPollerImpl.cpp +++ b/src/Nazara/Network/Win32/SocketPollerImpl.cpp @@ -159,7 +159,7 @@ namespace Nz } else { - NazaraWarning("Socket " + NumberToString(entry.fd) + " was returned by WSAPoll without POLLRDNORM nor POLLWRNORM events (events: 0x" + NumberToString(entry.revents, 16) + ')'); + NazaraWarningFmt("Socket {0} was returned by WSAPoll without POLLRDNORM nor POLLWRNORM events (events: {1:#x})", entry.fd, entry.revents); activeSockets--; } diff --git a/src/Nazara/OpenGLRenderer/OpenGLRenderer.cpp b/src/Nazara/OpenGLRenderer/OpenGLRenderer.cpp index ec33b1853..94847a6e0 100644 --- a/src/Nazara/OpenGLRenderer/OpenGLRenderer.cpp +++ b/src/Nazara/OpenGLRenderer/OpenGLRenderer.cpp @@ -71,7 +71,7 @@ namespace Nz } catch (const std::exception& e) { - NazaraWarning(std::string("Failed to load WGL: ") + e.what()); + NazaraWarningFmt("failed to load WGL: {0}", e.what()); } #endif @@ -82,7 +82,7 @@ namespace Nz } catch (const std::exception& e) { - NazaraWarning(std::string("Failed to load EGL: ") + e.what()); + NazaraWarningFmt("failed to load EGL: {0}", e.what()); } #endif @@ -93,7 +93,7 @@ namespace Nz } catch (const std::exception& e) { - NazaraWarning(std::string("Failed to load WebGL: ") + e.what()); + NazaraWarningFmt("failed to load WebGL: {0}", e.what()); } #endif diff --git a/src/Nazara/OpenGLRenderer/Utils_OpenGLRenderer.cpp b/src/Nazara/OpenGLRenderer/Utils_OpenGLRenderer.cpp index 2e70fe462..7ed8f809a 100644 --- a/src/Nazara/OpenGLRenderer/Utils_OpenGLRenderer.cpp +++ b/src/Nazara/OpenGLRenderer/Utils_OpenGLRenderer.cpp @@ -3,6 +3,8 @@ // For conditions of distribution and use, see copyright notice in Config.hpp #include +#include +#include #include namespace Nz @@ -31,6 +33,6 @@ namespace Nz case GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS: return "GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS: a framebuffer attachment is layered and a populated attachment is not (or color attachements are not from textures of the same target)"; } - return "Unknown OpenGL error (0x" + NumberToString(code, 16) + ')'; + return Format("unknown OpenGL error ({0:#x})", code); } } diff --git a/src/Nazara/OpenGLRenderer/Wrapper/WGL/WGLContext.cpp b/src/Nazara/OpenGLRenderer/Wrapper/WGL/WGLContext.cpp index ea39c1edd..079c4898d 100644 --- a/src/Nazara/OpenGLRenderer/Wrapper/WGL/WGLContext.cpp +++ b/src/Nazara/OpenGLRenderer/Wrapper/WGL/WGLContext.cpp @@ -365,7 +365,7 @@ namespace Nz::GL while (sampleCount > 1); if (int(m_params.sampleCount) != sampleCount) - NazaraWarning("couldn't find a pixel format matching " + std::to_string(m_params.sampleCount) + " sample count, using " + std::to_string(sampleCount) + " sample(s) instead"); + NazaraWarningFmt("couldn't find a pixel format matching {0} sample count, using {1} sample(s) instead", m_params.sampleCount, sampleCount); m_params.sampleCount = sampleCount; } diff --git a/src/Nazara/TextRenderer/Font.cpp b/src/Nazara/TextRenderer/Font.cpp index 7b7ef3f83..e25e37a7d 100644 --- a/src/Nazara/TextRenderer/Font.cpp +++ b/src/Nazara/TextRenderer/Font.cpp @@ -527,7 +527,7 @@ namespace Nz glyph.valid = true; } else - NazaraWarning("Failed to extract glyph \"" + FromUtf32String(std::u32string_view(&character, 1)) + "\""); + NazaraWarningFmt("failed to extract glyph \"{0}\"", FromUtf32String(std::u32string_view(&character, 1))); } else { diff --git a/src/Nazara/VulkanRenderer/Utils_VulkanRenderer.cpp b/src/Nazara/VulkanRenderer/Utils_VulkanRenderer.cpp index d56ff97ba..be06a09ab 100644 --- a/src/Nazara/VulkanRenderer/Utils_VulkanRenderer.cpp +++ b/src/Nazara/VulkanRenderer/Utils_VulkanRenderer.cpp @@ -2,8 +2,10 @@ // This file is part of the "Nazara Engine - Vulkan renderer" // For conditions of distribution and use, see copyright notice in Config.hpp -#include #include +#include +#include +#include #include namespace Nz @@ -98,6 +100,6 @@ namespace Nz break; } - return "Unknown Vulkan error (0x" + NumberToString(code, 16) + ')'; + return Format("unknown Vulkan error ({0:#x})", UnderlyingCast(code)); } } diff --git a/src/Nazara/VulkanRenderer/VulkanSwapchain.cpp b/src/Nazara/VulkanRenderer/VulkanSwapchain.cpp index 5d5c5e3f2..a7b953cf8 100644 --- a/src/Nazara/VulkanRenderer/VulkanSwapchain.cpp +++ b/src/Nazara/VulkanRenderer/VulkanSwapchain.cpp @@ -135,7 +135,7 @@ namespace Nz { PixelFormatContent formatContent = PixelFormatInfo::GetContent(format); if (formatContent != PixelFormatContent::DepthStencil && formatContent != PixelFormatContent::Stencil) - NazaraWarning("Invalid format " + std::string(PixelFormatInfo::GetName(format)) + " for depth-stencil attachment"); + NazaraWarningFmt("invalid format {0} for depth-stencil attachment", PixelFormatInfo::GetName(format)); m_depthStencilFormat = ToVulkan(format); if (m_depthStencilFormat == VK_FORMAT_UNDEFINED)