diff --git a/src/Main/globals.cxx b/src/Main/globals.cxx
index 9ed3a6b56..91af653c0 100644
--- a/src/Main/globals.cxx
+++ b/src/Main/globals.cxx
@@ -182,8 +182,12 @@ FGGlobals::~FGGlobals()
     delete current_panel;
 
     delete ATC_mgr;
-    controls->unbind();
-    delete controls;
+
+    if (controls)
+    {
+        controls->unbind();
+        delete controls;
+    }
 
     delete channel_options_list;
     delete initial_waypoints;