From c83e740ef94e16ba85574454f3138905edecb029 Mon Sep 17 00:00:00 2001 From: "Brad Payne (Vir Linden)" Date: Mon, 8 Mar 2021 13:56:16 +0000 Subject: Revert "Merge branch 'master' of https://bitbucket.org/lindenlab/viewer into DRTVWR-519" This reverts commit e61f485a04dc8c8ac6bcf6a24848359092884d14, reversing changes made to 00c47d079f7e958e473ed4083a7f7691fa02dcd5. --- indra/llcharacter/llkeyframemotion.cpp | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) (limited to 'indra/llcharacter/llkeyframemotion.cpp') diff --git a/indra/llcharacter/llkeyframemotion.cpp b/indra/llcharacter/llkeyframemotion.cpp index fe9de30f0a..cde38c8091 100644 --- a/indra/llcharacter/llkeyframemotion.cpp +++ b/indra/llcharacter/llkeyframemotion.cpp @@ -39,13 +39,14 @@ #include "llendianswizzle.h" #include "llkeyframemotion.h" #include "llquantize.h" +#include "llvfile.h" #include "m3math.h" #include "message.h" -#include "llfilesystem.h" //----------------------------------------------------------------------------- // Static Definitions //----------------------------------------------------------------------------- +LLVFS* LLKeyframeMotion::sVFS = NULL; LLKeyframeDataCache::keyframe_data_map_t LLKeyframeDataCache::sKeyframeDataMap; //----------------------------------------------------------------------------- @@ -514,7 +515,7 @@ LLMotion::LLMotionInitStatus LLKeyframeMotion::onInitialize(LLCharacter *charact return STATUS_SUCCESS; default: // we don't know what state the asset is in yet, so keep going - // check keyframe cache first then file cache then asset request + // check keyframe cache first then static vfs then asset request break; } @@ -558,8 +559,13 @@ LLMotion::LLMotionInitStatus LLKeyframeMotion::onInitialize(LLCharacter *charact U8 *anim_data; S32 anim_file_size; + if (!sVFS) + { + LL_ERRS() << "Must call LLKeyframeMotion::setVFS() first before loading a keyframe file!" << LL_ENDL; + } + BOOL success = FALSE; - LLFileSystem* anim_file = new LLFileSystem(mID, LLAssetType::AT_ANIMATION); + LLVFile* anim_file = new LLVFile(sVFS, mID, LLAssetType::AT_ANIMATION); if (!anim_file || !anim_file->getSize()) { delete anim_file; @@ -2290,9 +2296,10 @@ void LLKeyframeMotion::setLoopOut(F32 out_point) //----------------------------------------------------------------------------- // onLoadComplete() //----------------------------------------------------------------------------- -void LLKeyframeMotion::onLoadComplete(const LLUUID& asset_uuid, - LLAssetType::EType type, - void* user_data, S32 status, LLExtStat ext_status) +void LLKeyframeMotion::onLoadComplete(LLVFS *vfs, + const LLUUID& asset_uuid, + LLAssetType::EType type, + void* user_data, S32 status, LLExtStat ext_status) { LLUUID* id = (LLUUID*)user_data; @@ -2324,7 +2331,7 @@ void LLKeyframeMotion::onLoadComplete(const LLUUID& asset_uuid, // asset already loaded return; } - LLFileSystem file(asset_uuid, type, LLFileSystem::READ); + LLVFile file(vfs, asset_uuid, type, LLVFile::READ); S32 size = file.getSize(); U8* buffer = new U8[size]; -- cgit v1.2.3