From 71d28bdbf0baab9302c8f458e3bdbcfc60d656d4 Mon Sep 17 00:00:00 2001
From: Steven Bennetts <steve@lindenlab.com>
Date: Wed, 17 Jan 2007 23:02:00 +0000
Subject: merge release@56803 release-candidate@56833

---
 indra/llvfs/llvfs.cpp       | 6 +++++-
 indra/llvfs/llvfsthread.cpp | 1 +
 2 files changed, 6 insertions(+), 1 deletion(-)

(limited to 'indra/llvfs')

diff --git a/indra/llvfs/llvfs.cpp b/indra/llvfs/llvfs.cpp
index 39b12035c9..89ad65be9f 100644
--- a/indra/llvfs/llvfs.cpp
+++ b/indra/llvfs/llvfs.cpp
@@ -915,7 +915,11 @@ void LLVFS::renameFile(const LLUUID &file_id, const LLAssetType::EType file_type
 
 			for (S32 i = 0; i < (S32)VFSLOCK_COUNT; i++)
 			{
-				src_block->mLocks[(EVFSLock)i] = dest_block->mLocks[(EVFSLock)i];
+				if(dest_block->mLocks[i])
+				{
+					llerrs << "Renaming VFS block to a locked file." << llendl;
+				}
+				dest_block->mLocks[i] = src_block->mLocks[i];
 			}
 			
 			mFileBlocks.erase(new_spec);
diff --git a/indra/llvfs/llvfsthread.cpp b/indra/llvfs/llvfsthread.cpp
index 8ea98ab462..619c1b9bb3 100644
--- a/indra/llvfs/llvfsthread.cpp
+++ b/indra/llvfs/llvfsthread.cpp
@@ -281,6 +281,7 @@ bool LLVFSThread::Request::processIO()
 		LLUUID* new_idp = (LLUUID*)mBuffer;
 		LLAssetType::EType new_type = (LLAssetType::EType)mBytes;
 		mVFS->renameFile(mFileID, mFileType, *new_idp, new_type);
+		mFileID = *new_idp;
 		complete = true;
 		//llinfos << llformat("LLVFSThread::WRITE '%s': %d bytes arg:%d",getFilename(),mBytesRead) << llendl;
 	}
-- 
cgit v1.2.3