From 4df5ec776cc40a4872c5a353402aa0fe0b24a7bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Leclercq?= Date: Wed, 8 Feb 2017 16:27:55 +0100 Subject: [PATCH 1/3] Sdk/Entity: Fix entity destruction not calling Component::OnDetached --- SDK/src/NDK/Entity.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/SDK/src/NDK/Entity.cpp b/SDK/src/NDK/Entity.cpp index ce72aca62..d88556a31 100644 --- a/SDK/src/NDK/Entity.cpp +++ b/SDK/src/NDK/Entity.cpp @@ -158,11 +158,16 @@ namespace Ndk } m_systemBits.Clear(); - UnregisterAllHandles(); + // We properly destroy each component + for (std::size_t i = m_componentBits.FindFirst(); i != m_componentBits.npos; i = m_componentBits.FindNext(i)) + m_components[i]->SetEntity(nullptr); m_components.clear(); m_componentBits.Reset(); + // And then free every handle + UnregisterAllHandles(); + m_valid = false; } From ab6e9d3b86eb5c3793541f12705622c6c61ad4fb Mon Sep 17 00:00:00 2001 From: Lynix Date: Fri, 10 Feb 2017 15:20:43 +0100 Subject: [PATCH 2/3] Core/String: Fix FormatVA bug --- src/Nazara/Core/String.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/Nazara/Core/String.cpp b/src/Nazara/Core/String.cpp index a0bca5d64..7ea8c7df2 100644 --- a/src/Nazara/Core/String.cpp +++ b/src/Nazara/Core/String.cpp @@ -5102,10 +5102,14 @@ namespace Nz */ String String::FormatVA(const char* format, va_list args) { + // Copy va_list to use it twice + va_list args2; + va_copy(args2, args); + std::size_t length = std::vsnprintf(nullptr, 0, format, args); auto str = std::make_shared(length); - std::vsnprintf(str->string.get(), length + 1, format, args); + std::vsnprintf(str->string.get(), length + 1, format, args2); return String(std::move(str)); } From 212f3eddf00bef96944060520f803692767d0c29 Mon Sep 17 00:00:00 2001 From: Lynix Date: Sun, 12 Feb 2017 02:10:37 +0100 Subject: [PATCH 3/3] Network/UdpSocket: Fix documentation [skip ci] --- src/Nazara/Network/UdpSocket.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/Nazara/Network/UdpSocket.cpp b/src/Nazara/Network/UdpSocket.cpp index 145257afc..bc86f8401 100644 --- a/src/Nazara/Network/UdpSocket.cpp +++ b/src/Nazara/Network/UdpSocket.cpp @@ -17,6 +17,12 @@ namespace Nz { + /*! + * \ingroup network + * \class Nz::UdpSocket + * \brief Network class that represents a UDP socket, allowing for sending/receiving datagrams. + */ + /*! * \brief Binds a specific IpAddress * \return State of the socket