summaryrefslogtreecommitdiff
path: root/indra/llmath/llvolume.cpp
diff options
context:
space:
mode:
authorRider Linden <rider@lindenlab.com>2025-08-23 10:27:46 -0700
committerRider Linden <rider@lindenlab.com>2025-08-23 10:27:46 -0700
commit375158eb6450a0291ec1a0f55714fbf19a8287eb (patch)
treea3fa4bd843f919575aaddf0928eff38bae7d7b04 /indra/llmath/llvolume.cpp
parent96023976f5af0b9af8e8d066d9ad4eea213f53ee (diff)
parent37a04baf104aa394615d8e8286522988ba56c09d (diff)
Merge tag 'Second_Life_Release#37a04baf-2025.06' into project/lua_editor
Diffstat (limited to 'indra/llmath/llvolume.cpp')
-rw-r--r--indra/llmath/llvolume.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/indra/llmath/llvolume.cpp b/indra/llmath/llvolume.cpp
index 1e7dfd18f2..7c60253618 100644
--- a/indra/llmath/llvolume.cpp
+++ b/indra/llmath/llvolume.cpp
@@ -5711,7 +5711,15 @@ bool LLVolumeFace::cacheOptimize(bool gen_tangents)
S32 vert_count = 0;
if (!data.p.empty())
{
- vert_count = static_cast<S32>(meshopt_generateVertexRemapMulti(&remap[0], nullptr, data.p.size(), data.p.size(), mos, stream_count));
+ try
+ {
+ vert_count = static_cast<S32>(meshopt_generateVertexRemapMulti(&remap[0], nullptr, data.p.size(), data.p.size(), mos, stream_count));
+ }
+ catch (std::bad_alloc&)
+ {
+ LLError::LLUserWarningMsg::showOutOfMemory();
+ LL_ERRS("LLCoros") << "Failed to allocate memory for VertexRemap: " << (S32)data.p.size() << LL_ENDL;
+ }
}
if (vert_count < 65535 && vert_count != 0)