diff --git a/indra/newview/llfloatertools.cpp b/indra/newview/llfloatertools.cpp
index 49e24f8e3d17b17396e1c6dbb39ca2b460e8d536..c9b99d83fff0ead06e701035da836db1fd69a4a6 100644
--- a/indra/newview/llfloatertools.cpp
+++ b/indra/newview/llfloatertools.cpp
@@ -32,6 +32,7 @@
 #include "llcoord.h"
 //#include "llgl.h"
 
+#include "llagent.h"
 #include "llagentcamera.h"
 #include "llbutton.h"
 #include "llcheckboxctrl.h"
@@ -463,7 +464,8 @@ void LLFloaterTools::refresh()
 	childSetEnabled("linked_set_cost", have_selection);
 	childSetEnabled("object_cost", have_selection);
 
-	bool enable_mesh = gSavedSettings.getBOOL("MeshEnabled");
+	bool enable_mesh = gSavedSettings.getBOOL("MeshEnabled") && 
+					   !gAgent.getRegion()->getCapability("GetMesh").empty();
 
 	getChildView("linked_set_count")->setVisible(enable_mesh);
 	getChildView("linked_set_cost")->setVisible(enable_mesh);