This method doesn't work properly. Here is an example:
CMIUtilString test("\"hello\" \"\\\" world \\\" !\""); CMIUtilString::VecString_t res; test.SplitConsiderQuotes(" ", res);
Before this patch the result was as following:
(lldb) print res (CMIUtilString::VecString_t) $1 = size=4 { [0] = (std::__1::string = "\"hello\"") [1] = (std::__1::string = "\"\\\"") [2] = (std::__1::string = "world") [3] = (std::__1::string = "\\\" !\"") }
This patch fixes that error and now it looks like following:
(lldb) print res (CMIUtilString::VecString_t) $1 = size=2 { [0] = (std::__1::string = "\"hello\"") [1] = (std::__1::string = "\"\\\" world \\\" !\"") }