diff --git a/src/Wt/Http/Client.C b/src/Wt/Http/Client.C index 9d9827d64..c36fea840 100644 --- a/src/Wt/Http/Client.C +++ b/src/Wt/Http/Client.C @@ -1102,11 +1102,17 @@ void Client::handleRedirect(Http::Method method, void Client::emitDone(AsioWrapper::error_code err, const Message& response) { #ifdef WT_THREADED + { std::unique_lock lock(implementationMutex_); #endif impl_.reset(); redirectCount_ = 0; + +#ifdef WT_THREADED + } +#endif + done_.emit(err, response); }