From a2c6288ac6eaae4f7d381ba713cadfaa442cc9e2 Mon Sep 17 00:00:00 2001 From: Yunchan Cho Date: Mon, 8 Apr 2013 17:05:12 +0900 Subject: [PATCH] Change parser seperator of BoxSchemeHandler [Issue#] WEB-2905 [Problem] If value of 'box' scheme key has '&' character, the value is parsed partially. [Cause] 'box' scheme uses '&' character as seperator of key/value. '&' character can be also used by value. So other character is needed as 'box' scheme seperator for avoiding conlict. [Solution] BoxSchemeHandler use '@' character as seperator Change-Id: I0ea88b654688ce16d2cb0fadbc76a0fda9132c69 --- src/Core/BoxSchemeHandler.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) mode change 100644 => 100755 src/Core/BoxSchemeHandler.cpp diff --git a/src/Core/BoxSchemeHandler.cpp b/src/Core/BoxSchemeHandler.cpp old mode 100644 new mode 100755 index 56341d2..3475dfb --- a/src/Core/BoxSchemeHandler.cpp +++ b/src/Core/BoxSchemeHandler.cpp @@ -204,10 +204,10 @@ std::string BoxSchemeHandler::parse(std::string& uri, std::string& key) break; } - unsigned next = query.find_first_of("&", found + 1); + unsigned next = query.find_first_of("@", found + 1); if (!query.compare(found, key.size(), key)) { LogD("key matched!\n"); - value = std::string(query, seperator + 1, next - seperator); + value = std::string(query, seperator + 1, next - seperator - 1); break; } -- 2.7.4