diff --git a/src/html/winpars.cpp b/src/html/winpars.cpp
index 4108eb1873..c862b9cd60 100644
--- a/src/html/winpars.cpp
+++ b/src/html/winpars.cpp
@@ -293,7 +293,7 @@ wxFSFile *wxHtmlWinParser::OpenURL(wxHtmlURLType type,
// consider url as absolute path first
wxURI current(myurl);
- myfullurl = current.BuildUnescapedURI();
+ myfullurl = current.BuildURI();
// if not absolute then ...
if( current.IsReference() )
@@ -306,7 +306,7 @@ wxFSFile *wxHtmlWinParser::OpenURL(wxHtmlURLType type,
{
wxURI path(myfullurl);
path.Resolve( base );
- myfullurl = path.BuildUnescapedURI();
+ myfullurl = path.BuildURI();
}
else
{
@@ -315,13 +315,18 @@ wxFSFile *wxHtmlWinParser::OpenURL(wxHtmlURLType type,
{
basepath += myurl;
wxURI connected( basepath );
- myfullurl = connected.BuildUnescapedURI();
+ myfullurl = connected.BuildURI();
}
}
}
wxString redirect;
- status = m_windowInterface->OnHTMLOpeningURL(type, myfullurl, &redirect);
+ status = m_windowInterface->OnHTMLOpeningURL
+ (
+ type,
+ wxURI::Unescape(myfullurl),
+ &redirect
+ );
if ( status != wxHTML_REDIRECT )
{
myurl = myfullurl;