2
0
mirror of https://github.com/esiur/esiur-dotnet.git synced 2025-06-27 05:23:13 +00:00

deadlock prevention

This commit is contained in:
2022-03-31 02:27:30 +03:00
parent f258464063
commit 20fcaba518
7 changed files with 268 additions and 216 deletions

View File

@ -57,7 +57,7 @@ public class HTTPServer : NetworkServer<HTTPConnection>, IResource
[HTTPRequestPacket.HTTPMethod.UNKNOWN] = new List<RouteInfo>(),
[HTTPRequestPacket.HTTPMethod.DELETE] = new List<RouteInfo>(),
[HTTPRequestPacket.HTTPMethod.TRACE] = new List<RouteInfo>(),
[HTTPRequestPacket.HTTPMethod.CONNECT] = new List<RouteInfo>(),
[HTTPRequestPacket.HTTPMethod.CONNECT] = new List<RouteInfo>(),
[HTTPRequestPacket.HTTPMethod.PUT] = new List<RouteInfo>()
};
@ -274,11 +274,10 @@ public class HTTPServer : NetworkServer<HTTPConnection>, IResource
internal bool Execute(HTTPConnection sender)
{
foreach (var route in routes[sender.Request.Method])
{
if (route.Invoke(sender))
return true;
}
if (!sender.WSMode)
foreach (var route in routes[sender.Request.Method])
if (route.Invoke(sender))
return true;
foreach (var resource in filters)