? and = must not be percent-encoded in hrefs

Fixes: #11482
This commit is contained in:
Juergen Spitzmueller 2019-01-29 14:49:04 +01:00
parent 5c380dcc73
commit c2db448ff5

View File

@ -133,8 +133,8 @@ void InsetHyperlink::latex(otexstream & os,
if (!url.empty()) {
// Use URI/URL-style percent-encoded string (hexadecimal).
// We exclude some characters that must not be transformed
// in hrefs (% # / :) or that we need to treat manually (\).
url = to_percent_encoding(url, from_ascii("%#\\/:"));
// in hrefs (% # / : ? =) or that we need to treat manually (\).
url = to_percent_encoding(url, from_ascii("%#\\/:?="));
// We handle \ manually since \\ is valid
for (size_t i = 0, pos;
(pos = url.find('\\', i)) != string::npos;