From e236fc7e8af6c549009474e31eabd6a525bd0d65 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20Vondru=C5=A1?= Date: Fri, 30 Aug 2013 15:01:09 +0200 Subject: [PATCH] DebugTools: explicitly define destructor in source file. Fixes Clang warning about deletion of forward-declared MeshView, causing undefined behavior. --- src/DebugTools/Implementation/CapsuleRenderer.cpp | 4 ++++ src/DebugTools/Implementation/CapsuleRenderer.h | 2 ++ 2 files changed, 6 insertions(+) diff --git a/src/DebugTools/Implementation/CapsuleRenderer.cpp b/src/DebugTools/Implementation/CapsuleRenderer.cpp index 1cd1922bd..ef158ba7a 100644 --- a/src/DebugTools/Implementation/CapsuleRenderer.cpp +++ b/src/DebugTools/Implementation/CapsuleRenderer.cpp @@ -90,6 +90,10 @@ AbstractCapsuleRenderer<3>::AbstractCapsuleRenderer(): AbstractShapeRenderer<3>( } } +AbstractCapsuleRenderer<2>::~AbstractCapsuleRenderer() = default; + +AbstractCapsuleRenderer<3>::~AbstractCapsuleRenderer() = default; + template CapsuleRenderer::CapsuleRenderer(const Shapes::Implementation::AbstractShape& capsule): capsule(static_cast>&>(capsule).shape) {} template void CapsuleRenderer::draw(Resource& options, const typename DimensionTraits::MatrixType& projectionMatrix) { diff --git a/src/DebugTools/Implementation/CapsuleRenderer.h b/src/DebugTools/Implementation/CapsuleRenderer.h index d00c5e47f..5a2553470 100644 --- a/src/DebugTools/Implementation/CapsuleRenderer.h +++ b/src/DebugTools/Implementation/CapsuleRenderer.h @@ -37,6 +37,7 @@ template class AbstractCapsuleRenderer; template<> class AbstractCapsuleRenderer<2>: public AbstractShapeRenderer<2> { public: explicit AbstractCapsuleRenderer(); + ~AbstractCapsuleRenderer(); protected: Resource bottom, cylinder, top; @@ -45,6 +46,7 @@ template<> class AbstractCapsuleRenderer<2>: public AbstractShapeRenderer<2> { template<> class AbstractCapsuleRenderer<3>: public AbstractShapeRenderer<3> { public: explicit AbstractCapsuleRenderer(); + ~AbstractCapsuleRenderer(); protected: Resource bottom, cylinder, top;