MAINT-7343 - improved error case handling and checking for unlikely corners

master
Brad Payne (Vir Linden) 2017-05-09 10:58:43 -04:00
parent 989e3ef0be
commit 3e4fda414e
2 changed files with 13 additions and 5 deletions

View File

@ -1447,11 +1447,15 @@ bool LLTextureFetchWorker::doWork(S32 param)
{
// Capture some measure of total size for metrics
F64 byte_count = 0;
for (S32 i=mFirstPacket; i<=mLastPacket; i++)
if (mLastPacket >= mFirstPacket)
{
if (mPackets[i])
for (S32 i=mFirstPacket; i<=mLastPacket; i++)
{
byte_count += mPackets[i]->mSize;
llassert_always((i>=0) && (i<mPackets.size()));
if (mPackets[i])
{
byte_count += mPackets[i]->mSize;
}
}
}
@ -2252,6 +2256,7 @@ bool LLTextureFetchWorker::processSimulatorPackets()
S32 buffer_size = mFormattedImage->getDataSize();
for (S32 i = mFirstPacket; i<=mLastPacket; i++)
{
llassert_always((i>=0) && (i<mPackets.size()));
llassert_always(mPackets[i]);
buffer_size += mPackets[i]->mSize;
}

View File

@ -573,13 +573,16 @@ void LLViewerAssetStorage::assetRequestCoro(
result_code = LL_ERR_ASSET_REQUEST_FAILED;
ext_status = LL_EXSTAT_VFS_CORRUPT;
}
if (!vf.rename(uuid, atype))
else if (!vf.rename(uuid, atype))
{
LL_WARNS("ViewerAsset") << "rename failed" << LL_ENDL;
result_code = LL_ERR_ASSET_REQUEST_FAILED;
ext_status = LL_EXSTAT_VFS_CORRUPT;
}
mCountSucceeded++;
else
{
mCountSucceeded++;
}
}
else
{