Ignore duplicate llHTTPResponse calls to the same request. Prevents response corruption. Only the first llHTTPResponse call is obeyed, akin to SL.

avinationmerge
Tom 2011-01-29 12:45:53 -08:00
parent 87ed39c953
commit 188bdfc878
1 changed files with 9 additions and 4 deletions

View File

@ -48,6 +48,7 @@ namespace OpenSim.Region.CoreModules.Scripting.LSLHttp
public string url;
public UUID urlcode;
public Dictionary<UUID, RequestData> requests;
public bool responseSent;
}
public class RequestData
@ -199,10 +200,14 @@ namespace OpenSim.Region.CoreModules.Scripting.LSLHttp
if (m_RequestMap.ContainsKey(request))
{
UrlData urlData = m_RequestMap[request];
urlData.requests[request].responseCode = status;
urlData.requests[request].responseBody = body;
//urlData.requests[request].ev.Set();
urlData.requests[request].requestDone =true;
if (!urlData.responseSent)
{
urlData.requests[request].responseCode = status;
urlData.requests[request].responseBody = body;
//urlData.requests[request].ev.Set();
urlData.requests[request].requestDone = true;
urlData.responseSent = true;
}
}
else
{