diff options
Diffstat (limited to 'src/lib')
| -rw-r--r-- | src/lib/grok/context.h | 38 |
1 files changed, 16 insertions, 22 deletions
diff --git a/src/lib/grok/context.h b/src/lib/grok/context.h index 77e11ec07..9b249e8d8 100644 --- a/src/lib/grok/context.h +++ b/src/lib/grok/context.h @@ -177,7 +177,22 @@ public: ~GrokContext() { - shutdown(); + if (!_messenger) { + return; + } + + std::unique_lock<std::mutex> lk_global(launchMutex); + + if (!_messenger) { + return; + } + + if (_launched) { + _messenger->shutdown(); + } + + delete _messenger; + _messenger = nullptr; } bool launch(DCPVideo dcpv, int device) @@ -256,27 +271,6 @@ public: } private: - - void shutdown() - { - if (!_messenger) { - return; - } - - std::unique_lock<std::mutex> lk_global(launchMutex); - - if (!_messenger) { - return; - } - - if (_launched) { - _messenger->shutdown(); - } - - delete _messenger; - _messenger = nullptr; - } - void frame_done() { _dcpomatic_context->history.event(); |
