From aa306c3450f048573e94fb6bb0ca0100c6871f4f Mon Sep 17 00:00:00 2001 From: Atlante45 Date: Fri, 7 Jul 2017 17:01:07 -0700 Subject: [PATCH] Fix debug asserts on shutdown --- assignment-client/src/Agent.cpp | 1 + assignment-client/src/entities/EntityServer.cpp | 6 ++++++ assignment-client/src/entities/EntityServer.h | 2 ++ 3 files changed, 9 insertions(+) diff --git a/assignment-client/src/Agent.cpp b/assignment-client/src/Agent.cpp index f9b8087f94..8710553027 100644 --- a/assignment-client/src/Agent.cpp +++ b/assignment-client/src/Agent.cpp @@ -801,6 +801,7 @@ void Agent::aboutToFinish() { emit stopAvatarAudioTimer(); _avatarAudioTimerThread.quit(); + _avatarAudioTimerThread.wait(); // cleanup codec & encoder if (_codec && _encoder) { diff --git a/assignment-client/src/entities/EntityServer.cpp b/assignment-client/src/entities/EntityServer.cpp index ac686e2e0a..2c8f8a9e37 100644 --- a/assignment-client/src/entities/EntityServer.cpp +++ b/assignment-client/src/entities/EntityServer.cpp @@ -50,6 +50,12 @@ EntityServer::~EntityServer() { tree->removeNewlyCreatedHook(this); } +void EntityServer::aboutToFinish() { + DependencyManager::get()->cleanup(); + + OctreeServer::aboutToFinish(); +} + void EntityServer::handleEntityPacket(QSharedPointer message, SharedNodePointer senderNode) { if (_octreeInboundPacketProcessor) { _octreeInboundPacketProcessor->queueReceivedPacket(message, senderNode); diff --git a/assignment-client/src/entities/EntityServer.h b/assignment-client/src/entities/EntityServer.h index 40676e79bd..26c2f149aa 100644 --- a/assignment-client/src/entities/EntityServer.h +++ b/assignment-client/src/entities/EntityServer.h @@ -59,6 +59,8 @@ public: virtual void trackSend(const QUuid& dataID, quint64 dataLastEdited, const QUuid& sessionID) override; virtual void trackViewerGone(const QUuid& sessionID) override; + virtual void aboutToFinish() override; + public slots: virtual void nodeAdded(SharedNodePointer node) override; virtual void nodeKilled(SharedNodePointer node) override;