diff --git a/src/libprojectM/Renderer/Backend/OpenGL/OpenGLCopyTexture.hpp b/src/libprojectM/Renderer/Backend/OpenGL/OpenGLCopyTexture.hpp index fa39945e8..97874626d 100644 --- a/src/libprojectM/Renderer/Backend/OpenGL/OpenGLCopyTexture.hpp +++ b/src/libprojectM/Renderer/Backend/OpenGL/OpenGLCopyTexture.hpp @@ -22,7 +22,9 @@ public: // Mark override for clarity and to avoid hiding warnings void Init() override { + // Call both base class Init() to ensure proper initialization OpenGLRenderItem::Init(); + CopyTexture::Init(); } using OpenGLRenderItem::Init; // Unhide base Init() to avoid -Woverloaded-virtual warning diff --git a/src/libprojectM/Renderer/Backend/OpenGL/OpenGLPresetTransition.hpp b/src/libprojectM/Renderer/Backend/OpenGL/OpenGLPresetTransition.hpp index 65f1a8da8..360c19b6f 100644 --- a/src/libprojectM/Renderer/Backend/OpenGL/OpenGLPresetTransition.hpp +++ b/src/libprojectM/Renderer/Backend/OpenGL/OpenGLPresetTransition.hpp @@ -24,7 +24,9 @@ public: // Mark override for clarity and to avoid hiding warnings void Init() override { + // Call both base class Init() to ensure proper initialization OpenGLRenderItem::Init(); + PresetTransition::Init(); } using OpenGLRenderItem::Init; // Unhide base Init() to avoid -Woverloaded-virtual warning diff --git a/src/libprojectM/Renderer/Backend/OpenGL/OpenGLRenderItem.hpp b/src/libprojectM/Renderer/Backend/OpenGL/OpenGLRenderItem.hpp index e43d506b4..016610051 100644 --- a/src/libprojectM/Renderer/Backend/OpenGL/OpenGLRenderItem.hpp +++ b/src/libprojectM/Renderer/Backend/OpenGL/OpenGLRenderItem.hpp @@ -25,7 +25,8 @@ public: void Init() override; protected: - using ::libprojectM::Renderer::RenderItem::Init; // Unhide base Init() to avoid -Woverloaded-virtual warning + // Unhide base Init() to avoid -Woverloaded-virtual warning and allow calling base from derived + using ::libprojectM::Renderer::RenderItem::Init; GLuint m_vboID{0}; GLuint m_vaoID{0}; };