summaryrefslogtreecommitdiff
path: root/extra/kdelibs/CVE-2011-1168.patch
blob: 007eef91085ce2e71f525850791cf7d1b590cb6e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
--- a/khtml/khtml_part.cpp
+++ b/khtml/khtml_part.cpp
@@ -1804,7 +1804,10 @@ void KHTMLPart::htmlError( int errorCode
   stream >> errorName >> techName >> description >> causes >> solutions;
 
   QString url, protocol, datetime;
-  url = Qt::escape( reqUrl.prettyUrl() );
+
+  // This is somewhat confusing, but we have to escape the externally-
+  // controlled URL twice: once for i18n, and once for HTML.
+  url = Qt::escape( Qt::escape( reqUrl.prettyUrl() ) );
   protocol = reqUrl.protocol();
   datetime = KGlobal::locale()->formatDateTime( QDateTime::currentDateTime(),
                                                 KLocale::LongDate );