diff options
Diffstat (limited to 'al/filter.cpp')
-rw-r--r-- | al/filter.cpp | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/al/filter.cpp b/al/filter.cpp index 298bef5d..68daee76 100644 --- a/al/filter.cpp +++ b/al/filter.cpp @@ -57,16 +57,21 @@ public: #else [[gnu::format(printf, 3, 4)]] #endif - filter_exception(ALenum code, const char *msg, ...) : mErrorCode{code} - { - std::va_list args; - va_start(args, msg); - setMessage(msg, args); - va_end(args); - } + filter_exception(ALenum code, const char *msg, ...); + ~filter_exception() override; + ALenum errorCode() const noexcept { return mErrorCode; } }; +filter_exception::filter_exception(ALenum code, const char* msg, ...) : mErrorCode{code} +{ + std::va_list args; + va_start(args, msg); + setMessage(msg, args); + va_end(args); +} +filter_exception::~filter_exception() = default; + #define DEFINE_ALFILTER_VTABLE(T) \ const ALfilter::Vtable T##_vtable = { \ |