diff options
Diffstat (limited to 'linden/indra/newview/llfloatergodtools.cpp')
-rw-r--r-- | linden/indra/newview/llfloatergodtools.cpp | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/linden/indra/newview/llfloatergodtools.cpp b/linden/indra/newview/llfloatergodtools.cpp index 2bbbc65..461dfe2 100644 --- a/linden/indra/newview/llfloatergodtools.cpp +++ b/linden/indra/newview/llfloatergodtools.cpp | |||
@@ -252,13 +252,6 @@ void LLFloaterGodTools::onTabChanged(void* data, bool from_click) | |||
252 | // static | 252 | // static |
253 | void LLFloaterGodTools::processRegionInfo(LLMessageSystem* msg) | 253 | void LLFloaterGodTools::processRegionInfo(LLMessageSystem* msg) |
254 | { | 254 | { |
255 | LLHost host = msg->getSender(); | ||
256 | if (host != gAgent.getRegionHost()) | ||
257 | { | ||
258 | // update is for a different region than the one we're in | ||
259 | return; | ||
260 | } | ||
261 | |||
262 | //const S32 SIM_NAME_BUF = 256; | 255 | //const S32 SIM_NAME_BUF = 256; |
263 | U32 region_flags; | 256 | U32 region_flags; |
264 | U8 sim_access; | 257 | U8 sim_access; |
@@ -276,6 +269,8 @@ void LLFloaterGodTools::processRegionInfo(LLMessageSystem* msg) | |||
276 | S32 redirect_grid_y; | 269 | S32 redirect_grid_y; |
277 | LLUUID cache_id; | 270 | LLUUID cache_id; |
278 | 271 | ||
272 | LLHost host = msg->getSender(); | ||
273 | |||
279 | msg->getStringFast(_PREHASH_RegionInfo, _PREHASH_SimName, sim_name); | 274 | msg->getStringFast(_PREHASH_RegionInfo, _PREHASH_SimName, sim_name); |
280 | msg->getU32Fast(_PREHASH_RegionInfo, _PREHASH_EstateID, estate_id); | 275 | msg->getU32Fast(_PREHASH_RegionInfo, _PREHASH_EstateID, estate_id); |
281 | msg->getU32Fast(_PREHASH_RegionInfo, _PREHASH_ParentEstateID, parent_estate_id); | 276 | msg->getU32Fast(_PREHASH_RegionInfo, _PREHASH_ParentEstateID, parent_estate_id); |
@@ -285,6 +280,15 @@ void LLFloaterGodTools::processRegionInfo(LLMessageSystem* msg) | |||
285 | msg->getF32Fast(_PREHASH_RegionInfo, _PREHASH_ObjectBonusFactor, object_bonus_factor); | 280 | msg->getF32Fast(_PREHASH_RegionInfo, _PREHASH_ObjectBonusFactor, object_bonus_factor); |
286 | msg->getF32Fast(_PREHASH_RegionInfo, _PREHASH_BillableFactor, billable_factor); | 281 | msg->getF32Fast(_PREHASH_RegionInfo, _PREHASH_BillableFactor, billable_factor); |
287 | msg->getF32Fast(_PREHASH_RegionInfo, _PREHASH_WaterHeight, water_height); | 282 | msg->getF32Fast(_PREHASH_RegionInfo, _PREHASH_WaterHeight, water_height); |
283 | |||
284 | if (host != gAgent.getRegionHost()) | ||
285 | { | ||
286 | // Update is for a different region than the one we're in. | ||
287 | // Just check for a waterheight change. | ||
288 | LLWorld::getInstance()->waterHeightRegionInfo(sim_name, water_height); | ||
289 | return; | ||
290 | } | ||
291 | |||
288 | msg->getF32Fast(_PREHASH_RegionInfo, _PREHASH_TerrainRaiseLimit, terrain_raise_limit); | 292 | msg->getF32Fast(_PREHASH_RegionInfo, _PREHASH_TerrainRaiseLimit, terrain_raise_limit); |
289 | msg->getF32Fast(_PREHASH_RegionInfo, _PREHASH_TerrainLowerLimit, terrain_lower_limit); | 293 | msg->getF32Fast(_PREHASH_RegionInfo, _PREHASH_TerrainLowerLimit, terrain_lower_limit); |
290 | msg->getS32Fast(_PREHASH_RegionInfo, _PREHASH_PricePerMeter, price_per_meter); | 294 | msg->getS32Fast(_PREHASH_RegionInfo, _PREHASH_PricePerMeter, price_per_meter); |