Uses process IDs in dictionary for httpRequests

This commit is contained in:
Matthew Bowra-Dean
2011-01-04 14:56:28 +13:00
parent 4de390d173
commit 68a38c85f9

View File

@@ -172,7 +172,7 @@ namespace OpenRA.Launcher
public string CallbackName; public string CallbackName;
} }
Dictionary<Process, Request> requests = new Dictionary<Process, Request>(); Dictionary<int, Request> requests = new Dictionary<int, Request>();
public void httpRequest(string url, string callbackName) public void httpRequest(string url, string callbackName)
{ {
@@ -181,13 +181,13 @@ namespace OpenRA.Launcher
p.Exited += requestFinished; p.Exited += requestFinished;
var pipe = new NamedPipeClientStream(".", pipename, PipeDirection.In); var pipe = new NamedPipeClientStream(".", pipename, PipeDirection.In);
pipe.Connect(); pipe.Connect();
requests.Add(p, new Request(){ Pipe = pipe, CallbackName = callbackName }); requests.Add(p.Id, new Request(){ Pipe = pipe, CallbackName = callbackName });
} }
void requestFinished(object sender, EventArgs e) void requestFinished(object sender, EventArgs e)
{ {
var p = sender as Process; var p = sender as Process;
var request = requests[p]; var request = requests[p.Id];
using (var reader = new StreamReader(request.Pipe)) using (var reader = new StreamReader(request.Pipe))
{ {