diff options
author | Erik Kundiman <erik@megapahit.org> | 2025-06-24 17:25:38 +0800 |
---|---|---|
committer | Erik Kundiman <erik@megapahit.org> | 2025-06-24 17:25:38 +0800 |
commit | c8bd92305a7c09f70eb7d3861ccce61972fd1473 (patch) | |
tree | 4921f3384b316733d62ccd22826d6bd69954c844 | |
parent | a20bf9a72365142e6a534180c375221c100d7c54 (diff) | |
parent | bd7e79df36f8bf473bd6332eda7f1def5b9aaad7 (diff) |
Merge tag 'Second_Life_Project#bd7e79df-gltf_mesh_import' into gltf_mesh_import
-rw-r--r-- | indra/newview/gltf/buffer_util.h | 5 | ||||
-rw-r--r-- | indra/newview/llfilepicker.cpp | 2 | ||||
-rw-r--r-- | indra/newview/llfloatermodelpreview.cpp | 2 |
3 files changed, 7 insertions, 2 deletions
diff --git a/indra/newview/gltf/buffer_util.h b/indra/newview/gltf/buffer_util.h index 2632a0f263..be36c5e90b 100644 --- a/indra/newview/gltf/buffer_util.h +++ b/indra/newview/gltf/buffer_util.h @@ -375,6 +375,11 @@ namespace LL template<class T> inline void copy(Asset& asset, Accessor& accessor, LLStrider<T>& dst) { + if (accessor.mBufferView == INVALID_INDEX) + { + LL_WARNS("GLTF") << "Invalid buffer" << LL_ENDL; + return; + } const BufferView& bufferView = asset.mBufferViews[accessor.mBufferView]; const Buffer& buffer = asset.mBuffers[bufferView.mBuffer]; const U8* src = buffer.mData.data() + bufferView.mByteOffset + accessor.mByteOffset; diff --git a/indra/newview/llfilepicker.cpp b/indra/newview/llfilepicker.cpp index 66e19d551e..9e19d16957 100644 --- a/indra/newview/llfilepicker.cpp +++ b/indra/newview/llfilepicker.cpp @@ -222,6 +222,8 @@ bool LLFilePicker::setupFilter(ELoadFilter filter) break; case FFLOAD_MODEL: mOFN.lpstrFilter = MODEL_FILTER \ + COLLADA_FILTER \ + MATERIAL_FILTER \ L"\0"; break; case FFLOAD_MATERIAL: diff --git a/indra/newview/llfloatermodelpreview.cpp b/indra/newview/llfloatermodelpreview.cpp index 96f9ddbf8a..f962217480 100644 --- a/indra/newview/llfloatermodelpreview.cpp +++ b/indra/newview/llfloatermodelpreview.cpp @@ -625,11 +625,9 @@ void LLFloaterModelPreview::onJointListSelection() LLPanel *panel = mTabContainer->getPanelByName("rigging_panel"); LLScrollListCtrl *joints_list = panel->getChild<LLScrollListCtrl>("joints_list"); LLScrollListCtrl *joints_pos = panel->getChild<LLScrollListCtrl>("pos_overrides_list"); - LLScrollListCtrl *joints_scale = panel->getChild<LLScrollListCtrl>("scale_overrides_list"); LLTextBox *joint_pos_descr = panel->getChild<LLTextBox>("pos_overrides_descr"); joints_pos->deleteAllItems(); - joints_scale->deleteAllItems(); LLScrollListItem *selected = joints_list->getFirstSelected(); if (selected) |