summaryrefslogtreecommitdiff
path: root/indra/newview/llappviewer.cpp
diff options
context:
space:
mode:
authorAndrey Lihatskiy <alihatskiy@productengine.com>2020-05-04 23:36:10 +0300
committerAndrey Lihatskiy <alihatskiy@productengine.com>2020-05-04 23:36:10 +0300
commit6bd9fe423325a4166110ae944e3ba79482a6a937 (patch)
tree5dc36870d9209352885cc127c6ad4a2605b051ff /indra/newview/llappviewer.cpp
parentf2d7be71842de8158926e181833cae086fd9e8b7 (diff)
parent4a7fd0117a43dca9e30c58c6417ebdf6862561f6 (diff)
Merge branch 'master' into DRTVWR-497
Diffstat (limited to 'indra/newview/llappviewer.cpp')
-rw-r--r--indra/newview/llappviewer.cpp16
1 files changed, 13 insertions, 3 deletions
diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp
index 8d425c78c5..64004cf922 100644
--- a/indra/newview/llappviewer.cpp
+++ b/indra/newview/llappviewer.cpp
@@ -62,7 +62,9 @@
#include "llallocator.h"
#include "llcalc.h"
#include "llconversationlog.h"
+#if LL_WINDOWS
#include "lldxhardware.h"
+#endif
#include "lltexturestats.h"
#include "lltrace.h"
#include "lltracethreadrecorder.h"
@@ -1135,7 +1137,7 @@ bool LLAppViewer::init()
try {
initializeSecHandler();
}
- catch (LLProtectedDataException ex)
+ catch (LLProtectedDataException&)
{
LLNotificationsUtil::add("CorruptedProtectedDataStore");
}
@@ -1349,7 +1351,7 @@ bool LLAppViewer::frame()
{
LOG_UNHANDLED_EXCEPTION("");
}
- catch (std::bad_alloc)
+ catch (std::bad_alloc&)
{
LLMemory::logMemoryInfo(TRUE);
LLFloaterMemLeak* mem_leak_instance = LLFloaterReg::findTypedInstance<LLFloaterMemLeak>("mem_leaking");
@@ -1718,6 +1720,11 @@ bool LLAppViewer::cleanup()
disconnectViewer();
LL_INFOS() << "Viewer disconnected" << LL_ENDL;
+
+ if (gKeyboard)
+ {
+ gKeyboard->resetKeys();
+ }
display_cleanup();
@@ -3996,7 +4003,10 @@ static LLNotificationFunctorRegistration finish_quit_reg("ConfirmQuit", finish_q
void LLAppViewer::userQuit()
{
- if (gDisconnected || gViewerWindow->getProgressView()->getVisible())
+ if (gDisconnected
+ || !gViewerWindow
+ || !gViewerWindow->getProgressView()
+ || gViewerWindow->getProgressView()->getVisible())
{
requestQuit();
}