diff --git a/indra/newview/llviewerjoystick.cpp b/indra/newview/llviewerjoystick.cpp
index e68768cecd..67f3f75616 100644
--- a/indra/newview/llviewerjoystick.cpp
+++ b/indra/newview/llviewerjoystick.cpp
@@ -563,6 +563,14 @@ void LLViewerJoystick::updateStatus()
LL_PROFILE_ZONE_SCOPED_CATEGORY_INPUT;
#if LIB_NDOF
+ // FIRE-32004 - fix crash when opening joystick config and the device structure
+ // is not yet initialized or missing the necessary data inside
+ if (!mNdofDev || !mNdofDev->private_data)
+ {
+ return;
+ }
+ //
+
ndof_update(mNdofDev);
// FIRE-14344 - Add button preview and allow for more than 6 axes