From 5d2bb87601e7e51c69b8dbfcc940bd8c2d07c24b Mon Sep 17 00:00:00 2001
From: James Turner <zakalawe@mac.com>
Date: Wed, 12 Aug 2020 15:33:20 +0100
Subject: [PATCH] On shutdown, the renderer might already be gone.

Check for this when trying to remove the event handler.
---
 src/Viewer/PUICamera.cxx | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/Viewer/PUICamera.cxx b/src/Viewer/PUICamera.cxx
index 4c6c5e09e..53b57feba 100644
--- a/src/Viewer/PUICamera.cxx
+++ b/src/Viewer/PUICamera.cxx
@@ -275,7 +275,10 @@ PUICamera::~PUICamera()
 {
     SG_LOG(SG_GL, SG_INFO, "Deleting PUI camera");
 
-    auto viewer = globals->get_renderer()->getViewer();
+    // depending on if we're doing shutdown or reset, various things can be
+    // null here.
+    auto renderer = globals->get_renderer();
+    auto viewer = renderer ? renderer->getViewer() : nullptr;
     if (viewer) {
         viewer->removeEventHandler(_eventHandler);
     }