From 246449192f61054151bf2ddd9a109113ddf2ab7c Mon Sep 17 00:00:00 2001 From: Inusaito Sayori Date: Wed, 31 Jul 2013 10:30:03 -0400 Subject: [PATCH] Explicitly check for OpenSimExtras and subfields --- indra/newview/lfsimfeaturehandler.cpp | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/indra/newview/lfsimfeaturehandler.cpp b/indra/newview/lfsimfeaturehandler.cpp index f27c90773..178fbb50e 100644 --- a/indra/newview/lfsimfeaturehandler.cpp +++ b/indra/newview/lfsimfeaturehandler.cpp @@ -52,13 +52,19 @@ void LFSimFeatureHandler::setSupportedFeatures() { LLSD info; region->getSimulatorFeatures(info); - //if (!gHippoGridManager->getCurrentGrid()->isSecondLife()) // Non-SL specific sim features + if (info.has("OpenSimExtras")) // OpenSim specific sim features { // For definition of OpenSimExtras please see // http://opensimulator.org/wiki/SimulatorFeatures_Extras - mSupportsExport = info["OpenSimExtras"]["ExportSupported"].asBoolean(); - mMapServerURL = info["OpenSimExtras"]["map-server-url"].asString(); - mSearchURL = info["OpenSimExtras"]["search-server-url"].asString(); + mSupportsExport = info["OpenSimExtras"].has("ExportSupported") ? info["OpenSimExtras"]["ExportSupported"].asBoolean() : false; + mMapServerURL = info["OpenSimExtras"].has("map-server-url") ? info["OpenSimExtras"]["map-server-url"].asString() : ""; + mSearchURL = info["OpenSimExtras"].has("search-server-url") ? info["OpenSimExtras"]["search-server-url"].asString() : ""; + } + else // OpenSim specifics are unsupported reset all to default + { + mSupportsExport = false; + mMapServerURL = ""; + mSearchURL = ""; } } }