remove some unnecessary allocations

This commit is contained in:
Adam D. Ruppe 2018-12-31 11:04:29 -05:00
parent 16b41baae7
commit 204c95760e
1 changed files with 8 additions and 5 deletions

13
cgi.d
View File

@ -354,6 +354,9 @@ public import std.string;
public import std.stdio; public import std.stdio;
public import std.conv; public import std.conv;
import std.uri; import std.uri;
import std.uni;
import std.algorithm.comparison;
import std.algorithm.searching;
import std.exception; import std.exception;
import std.base64; import std.base64;
static import std.algorithm; static import std.algorithm;
@ -667,7 +670,7 @@ class Cgi {
lookingForMethod = false; lookingForMethod = false;
lookingForUri = true; lookingForUri = true;
if(arg.toLower() == "commandline") if(arg.asLowerCase().equal("commandline"))
requestMethod = RequestMethod.CommandLine; requestMethod = RequestMethod.CommandLine;
else else
requestMethod = to!RequestMethod(arg.toUpper()); requestMethod = to!RequestMethod(arg.toUpper());
@ -869,7 +872,7 @@ class Cgi {
lastEventId = getenv("HTTP_LAST_EVENT_ID"); lastEventId = getenv("HTTP_LAST_EVENT_ID");
auto ka = getenv("HTTP_CONNECTION"); auto ka = getenv("HTTP_CONNECTION");
if(ka.length && ka.toLower().indexOf("keep-alive") != -1) if(ka.length && ka.asLowerCase().canFind("keep-alive"))
keepAliveRequested = true; keepAliveRequested = true;
auto or = getenv("HTTP_ORIGIN"); auto or = getenv("HTTP_ORIGIN");
@ -1641,7 +1644,7 @@ class Cgi {
else if (name == "connection") { else if (name == "connection") {
if(value == "close" && closeConnection) if(value == "close" && closeConnection)
*closeConnection = true; *closeConnection = true;
if(value.toLower().indexOf("keep-alive") != -1) { if(value.asLowerCase().canFind("keep-alive")) {
keepAliveRequested = true; keepAliveRequested = true;
// on http 1.0, the connection is closed by default, // on http 1.0, the connection is closed by default,
@ -4187,10 +4190,10 @@ version(cgi_with_websocket) {
"sec-websocket-key" in cgi.requestHeaders "sec-websocket-key" in cgi.requestHeaders
&& &&
"connection" in cgi.requestHeaders && "connection" in cgi.requestHeaders &&
cgi.requestHeaders["connection"].toLower().indexOf("upgrade") != -1 cgi.requestHeaders["connection"].asLowerCase().canFind("upgrade")
&& &&
"upgrade" in cgi.requestHeaders && "upgrade" in cgi.requestHeaders &&
cgi.requestHeaders["upgrade"].toLower() == "websocket" cgi.requestHeaders["upgrade"].asLowerCase().equal("websocket")
; ;
} }