diff options
| author | Don Kjer <don@lindenlab.com> | 2011-05-17 19:21:55 +0000 |
|---|---|---|
| committer | Don Kjer <don@lindenlab.com> | 2011-05-17 19:21:55 +0000 |
| commit | ae8ed3fc2d4a7dda92ad8fdb34bc559478eb9177 (patch) | |
| tree | 64cd5d3328dbb56b03a03cf873a613005d0394dc /indra/llmessage/llassetstorage.cpp | |
| parent | c62ef53863bd01cb96de55e0250c8a8193b6c72b (diff) | |
| parent | 113f532ee57eeeca4dc7eb6ca05f923f1f3543d3 (diff) | |
Merge with viewer-development
Diffstat (limited to 'indra/llmessage/llassetstorage.cpp')
| -rw-r--r-- | indra/llmessage/llassetstorage.cpp | 23 |
1 files changed, 20 insertions, 3 deletions
diff --git a/indra/llmessage/llassetstorage.cpp b/indra/llmessage/llassetstorage.cpp index 27a368df3d..69d092de76 100644 --- a/indra/llmessage/llassetstorage.cpp +++ b/indra/llmessage/llassetstorage.cpp @@ -398,6 +398,12 @@ BOOL LLAssetStorage::hasLocalAsset(const LLUUID &uuid, const LLAssetType::EType bool LLAssetStorage::findInStaticVFSAndInvokeCallback(const LLUUID& uuid, LLAssetType::EType type, LLGetAssetCallback callback, void *user_data) { + if (user_data) + { + // The *user_data should not be passed without a callback to clean it up. + llassert(callback != NULL) + } + BOOL exists = mStaticVFS->getExists(uuid, type); if (exists) { @@ -432,15 +438,26 @@ void LLAssetStorage::getAssetData(const LLUUID uuid, LLAssetType::EType type, LL llinfos << "ASSET_TRACE requesting " << uuid << " type " << LLAssetType::lookup(type) << llendl; + if (user_data) + { + // The *user_data should not be passed without a callback to clean it up. + llassert(callback != NULL) + } + if (mShutDown) { llinfos << "ASSET_TRACE cancelled " << uuid << " type " << LLAssetType::lookup(type) << " shutting down" << llendl; - return; // don't get the asset or do any callbacks, we are shutting down + + if (callback) + { + callback(mVFS, uuid, type, user_data, LL_ERR_ASSET_REQUEST_FAILED, LL_EXSTAT_NONE); + } + return; } - + if (uuid.isNull()) { - // Special case early out for NULL uuid + // Special case early out for NULL uuid and for shutting down if (callback) { callback(mVFS, uuid, type, user_data, LL_ERR_ASSET_REQUEST_NOT_IN_DATABASE, LL_EXSTAT_NULL_UUID); |
