mirror of https://github.com/kiwix/libkiwix.git
'#' is a URI delimiter symbol
This commit is contained in:
parent
e49081da80
commit
82d477009d
|
@ -177,6 +177,7 @@ bool isReservedUrlChar(char c)
|
|||
case '=':
|
||||
case '+':
|
||||
case '$':
|
||||
case '#':
|
||||
return true;
|
||||
default:
|
||||
return false;
|
||||
|
|
|
@ -111,10 +111,9 @@ namespace URLEncoding
|
|||
const char letters[] = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
|
||||
const char digits[] = "0123456789";
|
||||
const char nonEncodableSymbols[] = ".-_~()*!";
|
||||
const char uriDelimSymbols[] = ":/@?=+&$;,";
|
||||
const char uriDelimSymbols[] = ":/@?=+&#$;,";
|
||||
|
||||
// XXX: # should belong to uriDelimSymbols!
|
||||
const char otherSymbols[] = R"(`#%^[]{}\|"<>)";
|
||||
const char otherSymbols[] = R"(`%^[]{}\|"<>)";
|
||||
|
||||
const char whitespace[] = " \n\t\r";
|
||||
|
||||
|
@ -136,9 +135,9 @@ TEST(stringTools, urlEncode)
|
|||
EXPECT_EQ(urlEncode(nonEncodableSymbols, true), nonEncodableSymbols);
|
||||
|
||||
EXPECT_EQ(urlEncode(uriDelimSymbols), uriDelimSymbols);
|
||||
EXPECT_EQ(urlEncode(uriDelimSymbols, true), "%3A%2F%40%3F%3D%2B%26%24%3B%2C");
|
||||
EXPECT_EQ(urlEncode(uriDelimSymbols, true), "%3A%2F%40%3F%3D%2B%26%23%24%3B%2C");
|
||||
|
||||
EXPECT_EQ(urlEncode(otherSymbols), "%60%23%25%5E%5B%5D%7B%7D%5C%7C%22%3C%3E");
|
||||
EXPECT_EQ(urlEncode(otherSymbols), "%60%25%5E%5B%5D%7B%7D%5C%7C%22%3C%3E");
|
||||
EXPECT_EQ(urlEncode(otherSymbols), urlEncode(otherSymbols, true));
|
||||
|
||||
EXPECT_EQ(urlEncode(whitespace), "%20%0A%09%0D");
|
||||
|
|
Loading…
Reference in New Issue