Fix client parse errors with '=' in remark strings (#632)

Replace every '=' with '-' in the remark string to avoid parse errors from the clients.
This commit is contained in:
Mi Tom authored and GitHub committed 2023-10-03 18:24:32 +08:00
1 parent 0ba0cdd18e
commit 09bb2909d0
1 file changed
+5
+5
View File
@@ -157,6 +157,11 @@ bool applyMatcher(const std::string &rule, std::string &real_rule, const Proxy &
void processRemark(std::string &oldremark, std::string &newremark, string_array &remarks_list, bool proc_comma = true) void processRemark(std::string &oldremark, std::string &newremark, string_array &remarks_list, bool proc_comma = true)
{ {
// Replace every '=' with '-' in the remark string to avoid parse errors from the clients.
// Surge is tested to yield an error when handling '=' in the remark string,
// not sure if other clients have the same problem.
std::replace(oldremark.begin(), oldremark.end(), '=', '-');
if(proc_comma) if(proc_comma)
{ {
if(oldremark.find(',') != std::string::npos) if(oldremark.find(',') != std::string::npos)