diff options
author | Don Kjer <don@lindenlab.com> | 2007-05-02 21:24:47 +0000 |
---|---|---|
committer | Don Kjer <don@lindenlab.com> | 2007-05-02 21:24:47 +0000 |
commit | 1c909afe3998778e4cc045c9ab733e8afbf7c25b (patch) | |
tree | 75c00a32a8e305280cbec253195d1113d628fc3e /indra/llvfs | |
parent | bc59c04653bf1404e8148a8169208b146a123b28 (diff) |
svn merge -r 60342:61148 svn+ssh://svn/svn/linden/branches/maintenance into release
Diffstat (limited to 'indra/llvfs')
-rw-r--r-- | indra/llvfs/llvfs.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/indra/llvfs/llvfs.cpp b/indra/llvfs/llvfs.cpp index e4749041ee..0ec71bfcb6 100644 --- a/indra/llvfs/llvfs.cpp +++ b/indra/llvfs/llvfs.cpp @@ -287,6 +287,8 @@ LLVFS::LLVFS(const char *index_filename, const char *data_filename, const BOOL r { llwarns << "Couldn't open vfs data file after trying many alternates" << llendl; mValid = VFSVALID_BAD_CANNOT_CREATE; + delete[] temp_index; + delete[] temp_data; return; } @@ -374,7 +376,6 @@ LLVFS::LLVFS(const char *index_filename, const char *data_filename, const BOOL r // to heal after some errors. JC if (block->mLength > 0 && (U32)block->mLength <= data_size && - block->mLocation >= 0 && block->mLocation < data_size && block->mSize > 0 && block->mSize <= block->mLength && @@ -415,7 +416,7 @@ LLVFS::LLVFS(const char *index_filename, const char *data_filename, const BOOL r delete block; } - tmp_ptr += block->SERIAL_SIZE; + tmp_ptr += LLVFSFileBlock::SERIAL_SIZE; } delete[] buffer; @@ -638,6 +639,7 @@ void LLVFS::presizeDataFile(const U32 size) if (!mDataFP) { llerrs << "LLVFS::presizeDataFile() with no data file open" << llendl; + return; } // we're creating this file for the first time, size it @@ -1711,7 +1713,6 @@ void LLVFS::audit() // do sanity check on this block if (block->mLength >= 0 && - block->mLocation >= 0 && block->mSize >= 0 && block->mSize <= block->mLength && block->mFileType >= LLAssetType::AT_NONE && |