@@ -24,28 +24,26 @@ inline void url_search_params::initialize(std::string_view input) {
2424 }
2525
2626 auto process_key_value = [&](const std::string_view current) {
27- auto equal = current.find_first_of ( " = " );
27+ auto equal = current.find ( ' = ' );
2828
2929 if (equal == std::string_view::npos) {
3030 auto name = std::string (current);
3131 std::replace (name.begin (), name.end (), ' +' , ' ' );
32- params.emplace_back (
33- unicode::percent_decode (name, name.find_first_of (' %' )), " " );
32+ params.emplace_back (unicode::percent_decode (name, name.find (' %' )), " " );
3433 } else {
3534 auto name = std::string (current.substr (0 , equal));
3635 auto value = std::string (current.substr (equal + 1 ));
3736
3837 std::replace (name.begin (), name.end (), ' +' , ' ' );
3938 std::replace (value.begin (), value.end (), ' +' , ' ' );
4039
41- params.emplace_back (
42- unicode::percent_decode (name, name.find_first_of (' %' )),
43- unicode::percent_decode (value, value.find_first_of (' %' )));
40+ params.emplace_back (unicode::percent_decode (name, name.find (' %' )),
41+ unicode::percent_decode (value, value.find (' %' )));
4442 }
4543 };
4644
4745 while (!input.empty ()) {
48- auto ampersand_index = input.find_first_of ( " & " );
46+ auto ampersand_index = input.find ( ' & ' );
4947
5048 if (ampersand_index == std::string_view::npos) {
5149 if (!input.empty ()) {
0 commit comments