diff options
| author | Dan Goodliffe <dan@randomdan.homeip.net> | 2018-03-03 14:42:16 +0000 | 
|---|---|---|
| committer | Dan Goodliffe <dan@randomdan.homeip.net> | 2018-03-03 16:06:38 +0000 | 
| commit | 87f098647448fd69172a33084d7a72107fdc70a1 (patch) | |
| tree | d247639f9fc96a88d082b5cd5b350b1c23d10723 | |
| parent | Replace string/char* quirks with string_view (diff) | |
| download | icespider-87f098647448fd69172a33084d7a72107fdc70a1.tar.bz2 icespider-87f098647448fd69172a33084d7a72107fdc70a1.tar.xz icespider-87f098647448fd69172a33084d7a72107fdc70a1.zip | |
Env import can be const now
| -rw-r--r-- | icespider/fcgi/cgiRequestBase.cpp | 9 | ||||
| -rw-r--r-- | icespider/fcgi/cgiRequestBase.h | 6 | 
2 files changed, 7 insertions, 8 deletions
| diff --git a/icespider/fcgi/cgiRequestBase.cpp b/icespider/fcgi/cgiRequestBase.cpp index 0159fcd..1daab68 100644 --- a/icespider/fcgi/cgiRequestBase.cpp +++ b/icespider/fcgi/cgiRequestBase.cpp @@ -26,20 +26,19 @@ namespace IceSpider {  	CGI_CONST(HTTP_COOKIE);  	CGI_CONST(REQUEST_METHOD); -	CgiRequestBase::CgiRequestBase(Core * c, char ** env) : +	CgiRequestBase::CgiRequestBase(Core * c, const char * const * const env) :  		IHttpRequest(c)  	{ -		for(char * const * e = env; *e; ++e) { +		for(const char * const * e = env; *e; ++e) {  			addenv(*e);  		}  	}  	void -	CgiRequestBase::addenv(char * e) +	CgiRequestBase::addenv(const char * const e)  	{  		if (auto eq = strchr(e, '=')) { -			*eq++ = '\0'; -			envmap.insert({ e, Env(eq, strchr(eq, '\0')) }); +			envmap.insert({ std::string_view(e, eq - e), Env(eq + 1, strchr(eq, '\0')) });  		}  	} diff --git a/icespider/fcgi/cgiRequestBase.h b/icespider/fcgi/cgiRequestBase.h index 4cc6a81..88bdc52 100644 --- a/icespider/fcgi/cgiRequestBase.h +++ b/icespider/fcgi/cgiRequestBase.h @@ -10,12 +10,12 @@  namespace IceSpider {  	class CgiRequestBase : public IHttpRequest {  		protected: -			CgiRequestBase(Core * c, char ** env); -			void addenv(char *); +			CgiRequestBase(Core * c, const char * const * const env); +			void addenv(const char * const);  			void initialize();  		public: -			typedef std::tuple<char *, char *> Env; +			typedef std::tuple<const char * const, const char * const> Env;  			typedef std::map<std::string_view, Env> VarMap;  			const PathElements & getRequestPath() const override; | 
