diff --git a/modules/juce_graphics/native/juce_RenderingHelpers.h b/modules/juce_graphics/native/juce_RenderingHelpers.h index 7db4ac7539..b35401a6e2 100644 --- a/modules/juce_graphics/native/juce_RenderingHelpers.h +++ b/modules/juce_graphics/native/juce_RenderingHelpers.h @@ -2420,9 +2420,9 @@ public: SoftwareRendererSavedState (const SoftwareRendererSavedState& other) = default; - SoftwareRendererSavedState* beginTransparencyLayer (float opacity) + std::unique_ptr beginTransparencyLayer (float opacity) { - auto* s = new SoftwareRendererSavedState (*this); + auto s = std::make_unique (*this); if (clip != nullptr) { @@ -2565,12 +2565,12 @@ public: void beginTransparencyLayer (float opacity) { save(); - currentState.reset (currentState->beginTransparencyLayer (opacity)); + currentState = currentState->beginTransparencyLayer (opacity); } void endTransparencyLayer() { - std::unique_ptr finishedTransparencyLayer (currentState.release()); + auto finishedTransparencyLayer = std::move (currentState); restore(); currentState->endTransparencyLayer (*finishedTransparencyLayer); } diff --git a/modules/juce_opengl/opengl/juce_OpenGLGraphicsContext.cpp b/modules/juce_opengl/opengl/juce_OpenGLGraphicsContext.cpp index 8fcb1babc7..30a33c191c 100644 --- a/modules/juce_opengl/opengl/juce_OpenGLGraphicsContext.cpp +++ b/modules/juce_opengl/opengl/juce_OpenGLGraphicsContext.cpp @@ -1797,9 +1797,9 @@ struct SavedState final : public RenderingHelpers::SavedStateBase previousTarget (createCopyIfNotNull (other.previousTarget.get())) {} - SavedState* beginTransparencyLayer (float opacity) + std::unique_ptr beginTransparencyLayer (float opacity) { - auto* s = new SavedState (*this); + auto s = std::make_unique (*this); if (clip != nullptr) {