From 576d3e3013d3e7ce47aa8abe819921996f486167 Mon Sep 17 00:00:00 2001 From: Paul Licameli Date: Mon, 7 Nov 2016 16:34:14 -0500 Subject: [PATCH] Don't let the catch-all block in Effect intercept the new exception --- src/effects/Effect.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/effects/Effect.cpp b/src/effects/Effect.cpp index 6a7d1ae9a..1685f6de6 100644 --- a/src/effects/Effect.cpp +++ b/src/effects/Effect.cpp @@ -39,6 +39,7 @@ greater use in future. #include "audacity/ConfigInterface.h" +#include "../AudacityException.h" #include "../AudioIO.h" #include "../LabelTrack.h" #include "../Mix.h" @@ -1612,8 +1613,18 @@ bool Effect::ProcessTrack(int count, { processed = ProcessBlock(mInBufPos.get(), mOutBufPos.get(), curBlockSize); } + catch( const AudacityException &e ) + { + // PRL: Bug 437: + // Pass this along to our application-level handler + throw; + } catch(...) { + // PRL: + // Exceptions for other reasons, maybe in third-party code... + // Continue treating them as we used to, but I wonder if these + // should now be treated the same way. return false; } wxASSERT(processed == curBlockSize);