From cfc5bf6976f62ebd42ea30d5a803c138fc357509 Mon Sep 17 00:00:00 2001 From: Sour Date: Tue, 25 Feb 2020 18:18:59 -0500 Subject: [PATCH] Fixed crash when taking screenshots with a video filter enabled (other than NTSC filters) --- Core/BaseVideoFilter.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Core/BaseVideoFilter.cpp b/Core/BaseVideoFilter.cpp index ca57d29a..8d6c75b0 100644 --- a/Core/BaseVideoFilter.cpp +++ b/Core/BaseVideoFilter.cpp @@ -87,16 +87,16 @@ void BaseVideoFilter::TakeScreenshot(VideoFilterType filterType, string filename pngBuffer = frameBuffer; + shared_ptr rotateFilter; + shared_ptr scaleFilter = ScaleFilter::GetScaleFilter(filterType); if(!rawScreenshot) { uint32_t rotationAngle = _console->GetSettings()->GetScreenRotation(); - shared_ptr rotateFilter; if(rotationAngle > 0) { rotateFilter.reset(new RotateFilter(rotationAngle)); pngBuffer = rotateFilter->ApplyFilter(pngBuffer, frameInfo.Width, frameInfo.Height); frameInfo = rotateFilter->GetFrameInfo(frameInfo); } - shared_ptr scaleFilter = ScaleFilter::GetScaleFilter(filterType); if(scaleFilter) { pngBuffer = scaleFilter->ApplyFilter(pngBuffer, frameInfo.Width, frameInfo.Height, _console->GetSettings()->GetPictureSettings().ScanlineIntensity); frameInfo = scaleFilter->GetFrameInfo(frameInfo);