From 63fe673af1974e265c5d18dc95f963fd968afd26 Mon Sep 17 00:00:00 2001 From: "Justin Clark-Casey (justincc)" Date: Thu, 8 Dec 2011 23:45:53 +0000 Subject: [PATCH] Revert "Revert "Stop performing the asset save part of baked texture uploading on the UploadBakedTexture cap asynchronously."" This turned out not to be the upload texture issue. This reverts commit 8721841fc3944ce0cdf5ce76297e73f9ed269751. --- .../UploadBakedTextureHandler.cs | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/OpenSim/Capabilities/Handlers/UploadBakedTexture/UploadBakedTextureHandler.cs b/OpenSim/Capabilities/Handlers/UploadBakedTexture/UploadBakedTextureHandler.cs index b7ca7030bc..c637ccf180 100644 --- a/OpenSim/Capabilities/Handlers/UploadBakedTexture/UploadBakedTextureHandler.cs +++ b/OpenSim/Capabilities/Handlers/UploadBakedTexture/UploadBakedTextureHandler.cs @@ -104,7 +104,7 @@ namespace OpenSim.Capabilities.Handlers } catch (Exception e) { - m_log.Error("[CAPS]: " + e.ToString()); + m_log.Error("[UPLOAD BAKED TEXTURE HANDLER]: " + e.ToString()); } return null; @@ -130,6 +130,8 @@ namespace OpenSim.Capabilities.Handlers class BakedTextureUploader { +// private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); + public event Action OnUpLoad; private string uploaderPath = String.Empty; @@ -154,10 +156,12 @@ namespace OpenSim.Capabilities.Handlers public string uploaderCaps(byte[] data, string path, string param) { Action handlerUpLoad = OnUpLoad; + + // Don't do this asynchronously, otherwise it's possible for the client to send set appearance information + // on another thread which might send out avatar updates before the asset has been put into the asset + // service. if (handlerUpLoad != null) - { - Util.FireAndForget(delegate(object o) { handlerUpLoad(newAssetID, data); }); - } + handlerUpLoad(newAssetID, data); string res = String.Empty; LLSDAssetUploadComplete uploadComplete = new LLSDAssetUploadComplete(); @@ -169,7 +173,7 @@ namespace OpenSim.Capabilities.Handlers httpListener.RemoveStreamHandler("POST", uploaderPath); - // m_log.InfoFormat("[CAPS] baked texture upload completed for {0}",newAssetID); +// m_log.DebugFormat("[BAKED TEXTURE UPLOADER]: baked texture upload completed for {0}", newAssetID); return res; }