summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
authorAndrey Kleshchev <andreykproductengine@lindenlab.com>2024-07-12 21:44:25 +0300
committerAndrey Kleshchev <117672381+akleshchev@users.noreply.github.com>2024-07-16 10:17:50 +0300
commitc8310aaea2fe6af7b66780c32afb226d1b4dc2ad (patch)
treef3629a028d2e859835637f6e5058337cbc18a740 /indra
parent27a2531c5bf375ed208d8fd5764a8797f08ce831 (diff)
viewer#2006 Fixed terrain textures not updating in the "Region/Estate" floater
Diffstat (limited to 'indra')
-rwxr-xr-xindra/newview/llviewerregion.cpp28
1 files changed, 18 insertions, 10 deletions
diff --git a/indra/newview/llviewerregion.cpp b/indra/newview/llviewerregion.cpp
index 25c07a5ff9..7623ab56a5 100755
--- a/indra/newview/llviewerregion.cpp
+++ b/indra/newview/llviewerregion.cpp
@@ -3147,16 +3147,24 @@ void LLViewerRegion::unpackRegionHandshake()
compp->setParamsReady();
}
- LLPBRTerrainFeatures::queueQuery(*this, [](LLUUID region_id, bool success, const LLModifyRegion& composition_changes)
- {
- if (!success) { return; }
- LLViewerRegion* region = LLWorld::getInstance()->getRegionFromID(region_id);
- if (!region) { return; }
- LLVLComposition* compp = region->getComposition();
- if (!compp) { return; }
- compp->apply(composition_changes);
- LLFloaterRegionInfo::sRefreshFromRegion(region);
- });
+ std::string cap = getCapability("ModifyRegion"); // needed for queueQuery
+ if (cap.empty())
+ {
+ LLFloaterRegionInfo::sRefreshFromRegion(this);
+ }
+ else
+ {
+ LLPBRTerrainFeatures::queueQuery(*this, [](LLUUID region_id, bool success, const LLModifyRegion& composition_changes)
+ {
+ if (!success) { return; }
+ LLViewerRegion* region = LLWorld::getInstance()->getRegionFromID(region_id);
+ if (!region) { return; }
+ LLVLComposition* compp = region->getComposition();
+ if (!compp) { return; }
+ compp->apply(composition_changes);
+ LLFloaterRegionInfo::sRefreshFromRegion(region);
+ });
+ }
}