lock set appearence during ValidateBakedTextureCache there seems to be a
overlap in same casesavinationmerge
parent
998e3d435a
commit
9aa6389b8b
|
@ -487,6 +487,9 @@ namespace OpenSim.Region.CoreModules.Avatar.AvatarFactory
|
||||||
public bool ValidateBakedTextureCache(IScenePresence sp)
|
public bool ValidateBakedTextureCache(IScenePresence sp)
|
||||||
{
|
{
|
||||||
bool defonly = true; // are we only using default textures
|
bool defonly = true; // are we only using default textures
|
||||||
|
|
||||||
|
lock (m_setAppearanceLock)
|
||||||
|
{
|
||||||
IAssetService cache = m_scene.AssetService;
|
IAssetService cache = m_scene.AssetService;
|
||||||
IBakedTextureModule bakedModule = m_scene.RequestModuleInterface<IBakedTextureModule>();
|
IBakedTextureModule bakedModule = m_scene.RequestModuleInterface<IBakedTextureModule>();
|
||||||
WearableCacheItem[] wearableCache = null;
|
WearableCacheItem[] wearableCache = null;
|
||||||
|
@ -545,8 +548,8 @@ namespace OpenSim.Region.CoreModules.Avatar.AvatarFactory
|
||||||
// so make grid cache be mandatory
|
// so make grid cache be mandatory
|
||||||
if (gotbacked)
|
if (gotbacked)
|
||||||
{
|
{
|
||||||
// m_log.Debug("[ValidateBakedCache] bakedModule cache override");
|
// m_log.Debug("[ValidateBakedCache] bakedModule cache override");
|
||||||
if(sp.Appearance.Texture.FaceTextures[idx] == null)
|
if (sp.Appearance.Texture.FaceTextures[idx] == null)
|
||||||
sp.Appearance.Texture.FaceTextures[idx] = sp.Appearance.Texture.CreateFace((uint)idx);
|
sp.Appearance.Texture.FaceTextures[idx] = sp.Appearance.Texture.CreateFace((uint)idx);
|
||||||
sp.Appearance.Texture.FaceTextures[idx].TextureID = wearableCache[idx].TextureID;
|
sp.Appearance.Texture.FaceTextures[idx].TextureID = wearableCache[idx].TextureID;
|
||||||
face = sp.Appearance.Texture.FaceTextures[idx];
|
face = sp.Appearance.Texture.FaceTextures[idx];
|
||||||
|
@ -612,6 +615,7 @@ namespace OpenSim.Region.CoreModules.Avatar.AvatarFactory
|
||||||
}
|
}
|
||||||
|
|
||||||
sp.Appearance.WearableCacheItems = wearableCache;
|
sp.Appearance.WearableCacheItems = wearableCache;
|
||||||
|
}
|
||||||
|
|
||||||
m_log.DebugFormat("[AVFACTORY]: Completed texture check for {0} {1} {2} {3}", sp.Name, sp.UUID, hits, defonly.ToString());
|
m_log.DebugFormat("[AVFACTORY]: Completed texture check for {0} {1} {2} {3}", sp.Name, sp.UUID, hits, defonly.ToString());
|
||||||
// debug
|
// debug
|
||||||
|
|
Loading…
Reference in New Issue