@@ -82,6 +82,9 @@ public function createHttpRequest()
8282
8383 // path & query
8484 $ requestUrl = isset ($ _SERVER ['REQUEST_URI ' ]) ? $ _SERVER ['REQUEST_URI ' ] : '/ ' ;
85+ if (!$ this ->binary && (!preg_match (self ::CHARS , rawurldecode ($ requestUrl )) || preg_last_error ())) {
86+ // TODO: invalid request
87+ }
8588 $ requestUrl = Strings::replace ($ requestUrl , $ this ->urlFilters ['url ' ]);
8689 $ tmp = explode ('? ' , $ requestUrl , 2 );
8790 $ path = Url::unescape ($ tmp [0 ], '%/?# ' );
@@ -98,10 +101,8 @@ public function createHttpRequest()
98101 }
99102 $ url ->setScriptPath ($ path );
100103
101- // GET, POST, COOKIE
104+ // POST, COOKIE
102105 $ useFilter = (!in_array (ini_get ('filter.default ' ), array ('' , 'unsafe_raw ' )) || ini_get ('filter.default_flags ' ));
103-
104- $ query = $ url ->getQueryParameters ();
105106 $ post = $ useFilter ? filter_input_array (INPUT_POST , FILTER_UNSAFE_RAW ) : (empty ($ _POST ) ? array () : $ _POST );
106107 $ cookies = $ useFilter ? filter_input_array (INPUT_COOKIE , FILTER_UNSAFE_RAW ) : (empty ($ _COOKIE ) ? array () : $ _COOKIE );
107108
@@ -112,7 +113,7 @@ public function createHttpRequest()
112113
113114 // remove invalid characters
114115 if (!$ this ->binary ) {
115- $ list = array (& $ query , & $ post , & $ cookies );
116+ $ list = array (& $ post , & $ cookies );
116117 while (list ($ key , $ val ) = each ($ list )) {
117118 foreach ($ val as $ k => $ v ) {
118119 if (is_string ($ k ) && (!preg_match (self ::CHARS , $ k ) || preg_last_error ())) {
@@ -129,7 +130,6 @@ public function createHttpRequest()
129130 }
130131 unset($ list , $ key , $ val , $ k , $ v );
131132 }
132- $ url ->setQuery ($ query );
133133
134134
135135 // FILES and create FileUpload objects
0 commit comments