diff --git a/OpenSim/Framework/Communications/Cache/AssetTransactionManager.cs b/OpenSim/Framework/Communications/Cache/AssetTransactionManager.cs index e78e20972a..e4808a12d7 100644 --- a/OpenSim/Framework/Communications/Cache/AssetTransactionManager.cs +++ b/OpenSim/Framework/Communications/Cache/AssetTransactionManager.cs @@ -99,15 +99,18 @@ namespace OpenSim.Framework.Communications.Cache if (uploader != null) { // Upload has already compelted uploading... + if (uploader.Initialise(remoteClient, assetID, transaction, type, data, storeLocal, tempFile)) { - lock (transactions.XferUploaders) + //[commenting out as this removal breaks uploads] + /*lock (transactions.XferUploaders) { + // XXX Weak ass way of doing this by directly manipulating this public dictionary, purely temporary transactions.XferUploaders.Remove(uploader.TransactionID); //m_log.InfoFormat("[ASSET TRANSACTIONS] Current uploaders: {0}", transactions.XferUploaders.Count); - } + }*/ } } } diff --git a/OpenSim/Framework/Communications/Cache/AssetTransactions.cs b/OpenSim/Framework/Communications/Cache/AssetTransactions.cs index da10f858f9..996e5ba2b1 100644 --- a/OpenSim/Framework/Communications/Cache/AssetTransactions.cs +++ b/OpenSim/Framework/Communications/Cache/AssetTransactions.cs @@ -105,7 +105,9 @@ namespace OpenSim.Framework.Communications.Cache } } - // Remove the uploader once the uploader is complete + // Remove the uploader once the uploader is complete + //[don't think we can be sure a upload has finished from here, uploads are multi part things] + // [or maybe we can if we do more checking like data lenght checks] if (uploaderFound != null) { // m_log.Info( @@ -113,7 +115,7 @@ namespace OpenSim.Framework.Communications.Cache // "[ASSET TRANSACTIONS] Removing asset xfer uploader with transfer id {0}, transaction {1}", // xferID, uploaderFound.TransactionID)); - XferUploaders.Remove(uploaderFound.TransactionID); + // XferUploaders.Remove(uploaderFound.TransactionID); //m_log.InfoFormat("[ASSET TRANSACTIONS] Current uploaders: {0}", XferUploaders.Count); }