mirror of
https://github.com/opensim/opensim.git
synced 2026-08-01 14:16:07 +08:00
From: Michael Osias <mosias@us.ibm.com>
This patch implements the llSendRemoteData command and fixes mantis 552, and possibly 586.
This commit is contained in:
@@ -184,13 +184,15 @@ namespace OpenSim.Region.Environment.Modules
|
||||
|
||||
public void StopHttpRequest(uint m_localID, LLUUID m_itemID)
|
||||
{
|
||||
lock (HttpListLock)
|
||||
{
|
||||
HttpRequestClass tmpReq;
|
||||
if (m_pendingRequests.TryGetValue(m_itemID, out tmpReq))
|
||||
if(m_pendingRequests != null) {
|
||||
lock (HttpListLock)
|
||||
{
|
||||
tmpReq.Stop();
|
||||
m_pendingRequests.Remove(m_itemID);
|
||||
HttpRequestClass tmpReq;
|
||||
if (m_pendingRequests.TryGetValue(m_itemID, out tmpReq))
|
||||
{
|
||||
tmpReq.Stop();
|
||||
m_pendingRequests.Remove(m_itemID);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -216,7 +218,6 @@ namespace OpenSim.Region.Environment.Modules
|
||||
{
|
||||
if (tmpReq.finished)
|
||||
{
|
||||
m_pendingRequests.Remove(luid);
|
||||
return tmpReq;
|
||||
}
|
||||
}
|
||||
@@ -224,6 +225,21 @@ namespace OpenSim.Region.Environment.Modules
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public void RemoveCompletedRequest(LLUUID id)
|
||||
{
|
||||
lock (HttpListLock)
|
||||
{
|
||||
HttpRequestClass tmpReq;
|
||||
if (m_pendingRequests.TryGetValue(id, out tmpReq))
|
||||
{
|
||||
tmpReq.Stop();
|
||||
tmpReq = null;
|
||||
m_pendingRequests.Remove(id);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
//
|
||||
@@ -269,6 +285,7 @@ namespace OpenSim.Region.Environment.Modules
|
||||
httpThread.Name = "HttpRequestThread";
|
||||
httpThread.Priority = ThreadPriority.BelowNormal;
|
||||
httpThread.IsBackground = true;
|
||||
finished = false;
|
||||
httpThread.Start();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user