Better handling of missing assets.
parent
f3d2192cd4
commit
e3d5beebfb
|
@ -10368,12 +10368,12 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
||||||
|
|
||||||
UUID requestID = UUID.Zero;
|
UUID requestID = UUID.Zero;
|
||||||
byte source = 2;
|
byte source = 2;
|
||||||
if (transferRequest.TransferInfo.SourceType == 2)
|
if ((transferRequest.TransferInfo.SourceType == 2) || (transferRequest.TransferInfo.SourceType == 2222))
|
||||||
{
|
{
|
||||||
//direct asset request
|
//direct asset request
|
||||||
requestID = new UUID(transferRequest.TransferInfo.Params, 0);
|
requestID = new UUID(transferRequest.TransferInfo.Params, 0);
|
||||||
}
|
}
|
||||||
else if (transferRequest.TransferInfo.SourceType == 3)
|
else if ((transferRequest.TransferInfo.SourceType == 3) || (transferRequest.TransferInfo.SourceType == 3333))
|
||||||
{
|
{
|
||||||
//inventory asset request
|
//inventory asset request
|
||||||
requestID = new UUID(transferRequest.TransferInfo.Params, 80);
|
requestID = new UUID(transferRequest.TransferInfo.Params, 80);
|
||||||
|
@ -10382,16 +10382,23 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
||||||
}
|
}
|
||||||
|
|
||||||
if (null == asset)
|
if (null == asset)
|
||||||
|
{
|
||||||
|
if ((m_hyperAssets != null) && (transferRequest.TransferInfo.SourceType < 2000))
|
||||||
{
|
{
|
||||||
// Try the user's inventory, but only if it's different from the regions'
|
// Try the user's inventory, but only if it's different from the regions'
|
||||||
string userAssets = m_hyperAssets.GetUserAssetServer(AgentId);
|
string userAssets = m_hyperAssets.GetUserAssetServer(AgentId);
|
||||||
if ((userAssets != string.Empty) && (userAssets != m_hyperAssets.GetSimAssetServer()))
|
if ((userAssets != string.Empty) && (userAssets != m_hyperAssets.GetSimAssetServer()))
|
||||||
{
|
{
|
||||||
m_log.DebugFormat("[CLIENT]: asset {0} not found in local asset storage. Trying user's storage.", id);
|
m_log.DebugFormat("[CLIENT]: asset {0} not found in local asset storage. Trying user's storage.", id);
|
||||||
transferRequest.TransferInfo.SourceType = 9999; // marker
|
if (transferRequest.TransferInfo.SourceType == 2)
|
||||||
|
transferRequest.TransferInfo.SourceType = 2222; // marker
|
||||||
|
else if (transferRequest.TransferInfo.SourceType == 3)
|
||||||
|
transferRequest.TransferInfo.SourceType = 3333; // marker
|
||||||
|
|
||||||
m_assetService.Get(userAssets + "/" + id, transferRequest, AssetReceived);
|
m_assetService.Get(userAssets + "/" + id, transferRequest, AssetReceived);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
//m_log.DebugFormat("[ASSET CACHE]: Asset transfer request for asset which is {0} already known to be missing. Dropping", requestID);
|
//m_log.DebugFormat("[ASSET CACHE]: Asset transfer request for asset which is {0} already known to be missing. Dropping", requestID);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue