diff options
| -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; | 
