diff options
Diffstat (limited to 'kde-base/kdelibs/files/kdelibs-4.14.3-trim-crash.patch')
-rw-r--r-- | kde-base/kdelibs/files/kdelibs-4.14.3-trim-crash.patch | 610 |
1 files changed, 0 insertions, 610 deletions
diff --git a/kde-base/kdelibs/files/kdelibs-4.14.3-trim-crash.patch b/kde-base/kdelibs/files/kdelibs-4.14.3-trim-crash.patch deleted file mode 100644 index 12c84dcfe93..00000000000 --- a/kde-base/kdelibs/files/kdelibs-4.14.3-trim-crash.patch +++ /dev/null @@ -1,610 +0,0 @@ -From 570425a30c008297df09ef48b60486108fcf33e9 Mon Sep 17 00:00:00 2001 -From: Andrea Iacovitti <aiacovitti@libero.it> -Date: Tue, 11 Nov 2014 07:54:28 +0100 -Subject: [PATCH] Introduce DOMString::trimSpaces(), useful for removing space - characters from url string. - ---- - khtml/css/css_valueimpl.cpp | 4 ++-- - khtml/css/cssparser.cpp | 4 ++-- - khtml/dom/dom_string.cpp | 32 ++++++++++++++++++++++++++++++++ - khtml/dom/dom_string.h | 7 +++++++ - khtml/dom/html_base.cpp | 8 ++++---- - khtml/dom/html_document.cpp | 2 +- - khtml/dom/html_form.cpp | 4 ++-- - khtml/dom/html_head.cpp | 12 ++++++------ - khtml/dom/html_image.cpp | 8 ++++---- - khtml/dom/html_inline.cpp | 4 ++-- - khtml/ecma/kjs_html.cpp | 4 ++-- - khtml/ecma/xmlhttprequest.cpp | 3 ++- - khtml/html/html_baseimpl.cpp | 6 +++--- - khtml/html/html_formimpl.cpp | 2 +- - khtml/html/html_headimpl.cpp | 12 ++++++------ - khtml/html/html_imageimpl.cpp | 6 +++--- - khtml/html/html_inlineimpl.cpp | 2 +- - khtml/html/html_objectimpl.cpp | 4 ++-- - khtml/html/html_tableimpl.cpp | 4 ++-- - khtml/html/htmlparser.cpp | 4 ++-- - khtml/html/htmlprospectivetokenizer.cpp | 4 ++-- - khtml/khtml_part.cpp | 4 ++-- - khtml/khtmlview.cpp | 2 +- - khtml/rendering/render_image.cpp | 8 ++++---- - khtml/xml/dom_docimpl.cpp | 7 ++++--- - 25 files changed, 99 insertions(+), 58 deletions(-) - -diff --git a/khtml/css/css_valueimpl.cpp b/khtml/css/css_valueimpl.cpp -index 98f33e6..aa825b7 100644 ---- a/khtml/css/css_valueimpl.cpp -+++ b/khtml/css/css_valueimpl.cpp -@@ -1383,9 +1383,9 @@ CSSImageValueImpl::CSSImageValueImpl(const DOMString &url, StyleBaseImpl* style) - : CSSPrimitiveValueImpl(url, CSSPrimitiveValue::CSS_URI) - { - m_image = 0; -- const QString imgUrl = url.string().trimmed(); -+ const DOMString imgUrl = url.trimSpaces(); - if (!imgUrl.isEmpty()) { -- m_fullImageUrl = KUrl(style->baseURL(), imgUrl).url(); -+ m_fullImageUrl = KUrl(style->baseURL(), imgUrl.string()).url(); - } else { - m_fullImageUrl.clear(); - } -diff --git a/khtml/css/cssparser.cpp b/khtml/css/cssparser.cpp -index e8f8493..600d205 100644 ---- a/khtml/css/cssparser.cpp -+++ b/khtml/css/cssparser.cpp -@@ -2309,8 +2309,8 @@ bool CSSParser::parseFontFaceSrc() - while ((val = valueList->current())) { - CSSFontFaceSrcValueImpl* parsedValue = 0; - if (val->unit == CSSPrimitiveValue::CSS_URI && !expectComma && styleElement) { -- const QString uri = qString(val->string).trimmed(); -- parsedValue = new CSSFontFaceSrcValueImpl(DOMString(KUrl(styleElement->baseURL(), uri).url()), false /*local*/); -+ const DOMString uri = domString(val->string).trimSpaces(); -+ parsedValue = new CSSFontFaceSrcValueImpl(DOMString(KUrl(styleElement->baseURL(), uri.string()).url()), false /*local*/); - uriValue = parsedValue; - allowFormat = true; - expectComma = true; -diff --git a/khtml/dom/dom_string.cpp b/khtml/dom/dom_string.cpp -index d54d037..4a10221 100644 ---- a/khtml/dom/dom_string.cpp -+++ b/khtml/dom/dom_string.cpp -@@ -290,6 +290,38 @@ bool DOMString::startsWith(const DOMString& str) const - return impl->startsWith(str.implementation()); - } - -+static inline bool isSpaceCharacter(const ushort &c) -+{ -+ // http://dev.w3.org/html5/spec-LC/common-microsyntaxes.html#space-character -+ return ((c < 0x0021) && -+ (c == 0x0020 || c == 0x0009 || c == 0x000A || c == 0x000C || c == 0x000D)); -+} -+ -+DOMString DOMString::trimSpaces() const -+{ -+ if (!impl || !impl->l) { -+ return *this; -+ } -+ -+ const QChar *s = impl->s; -+ unsigned int start = 0; -+ unsigned int end = impl->l - 1; -+ -+ while ((start <= end) && isSpaceCharacter(s[start].unicode())) { -+ ++start; -+ } -+ -+ if (start > end) { -+ return DOMString(""); -+ } -+ -+ while (end && isSpaceCharacter(s[end].unicode())) { -+ --end; -+ } -+ -+ return new DOMStringImpl(s + start, end - start + 1); -+} -+ - // ------------------------------------------------------------------------ - - bool DOM::strcasecmp( const DOMString &as, const DOMString &bs ) -diff --git a/khtml/dom/dom_string.h b/khtml/dom/dom_string.h -index 13b4265..84b1378 100644 ---- a/khtml/dom/dom_string.h -+++ b/khtml/dom/dom_string.h -@@ -125,6 +125,13 @@ public: - bool startsWith(const DOMString& str) const; - - /** -+ * Returns a string with Space Characters removed from the start and the end. -+ * Space Characters as defined in -+ * http://dev.w3.org/html5/spec-LC/common-microsyntaxes.html#space-character -+ */ -+ DOMString trimSpaces() const; -+ -+ /** - * @internal get a handle to the imlementation of the DOMString - * Use at own risk!!! - */ -diff --git a/khtml/dom/html_base.cpp b/khtml/dom/html_base.cpp -index c5e9048..11ee331 100644 ---- a/khtml/dom/html_base.cpp -+++ b/khtml/dom/html_base.cpp -@@ -231,8 +231,8 @@ void HTMLFrameElement::setScrolling( const DOMString &value ) - DOMString HTMLFrameElement::src() const - { - if(!impl) return DOMString(); -- const QString s = ((ElementImpl *)impl)->getAttribute(ATTR_SRC).string().trimmed(); -- return !s.isNull() ? impl->document()->completeURL(s) : DOMString(); -+ const DOMString s = ((ElementImpl *)impl)->getAttribute(ATTR_SRC).trimSpaces(); -+ return !s.isNull() ? impl->document()->completeURL(s.string()) : s; - } - - void HTMLFrameElement::setSrc( const DOMString &value ) -@@ -367,8 +367,8 @@ void HTMLIFrameElement::setScrolling( const DOMString &value ) - DOMString HTMLIFrameElement::src() const - { - if(!impl) return DOMString(); -- const QString s = ((ElementImpl *)impl)->getAttribute(ATTR_SRC).string().trimmed(); -- return !s.isNull() ? impl->document()->completeURL(s) : DOMString(); -+ const DOMString s = ((ElementImpl *)impl)->getAttribute(ATTR_SRC).trimSpaces(); -+ return !s.isNull() ? impl->document()->completeURL(s.string()) : s; - } - - void HTMLIFrameElement::setSrc( const DOMString &value ) -diff --git a/khtml/dom/html_document.cpp b/khtml/dom/html_document.cpp -index 042bc5a..2acf683 100644 ---- a/khtml/dom/html_document.cpp -+++ b/khtml/dom/html_document.cpp -@@ -100,7 +100,7 @@ DOMString HTMLDocument::referrer() const - DOMString HTMLDocument::completeURL(const DOMString& str) const - { - if(!impl) return str; -- return ((HTMLDocumentImpl *)impl)->completeURL(str.string().trimmed()); -+ return ((HTMLDocumentImpl *)impl)->completeURL(str.trimSpaces().string()); - } - - DOMString HTMLDocument::domain() const -diff --git a/khtml/dom/html_form.cpp b/khtml/dom/html_form.cpp -index 425cb3d..6d44261 100644 ---- a/khtml/dom/html_form.cpp -+++ b/khtml/dom/html_form.cpp -@@ -504,8 +504,8 @@ void HTMLInputElement::setSize( long value ) - DOMString HTMLInputElement::src() const - { - if(!impl) return DOMString(); -- const QString s = static_cast<ElementImpl*>(impl)->getAttribute(ATTR_SRC).string().trimmed(); -- return !s.isNull() ? impl->document()->completeURL(s) : DOMString(); -+ const DOMString s = static_cast<ElementImpl*>(impl)->getAttribute(ATTR_SRC).trimSpaces(); -+ return !s.isNull() ? impl->document()->completeURL(s.string()) : s; - } - - void HTMLInputElement::setSrc( const DOMString &value ) -diff --git a/khtml/dom/html_head.cpp b/khtml/dom/html_head.cpp -index 4812631..23fe125 100644 ---- a/khtml/dom/html_head.cpp -+++ b/khtml/dom/html_head.cpp -@@ -58,8 +58,8 @@ HTMLBaseElement::~HTMLBaseElement() - DOMString HTMLBaseElement::href() const - { - if(!impl) return DOMString(); -- const QString href = static_cast<ElementImpl*>(impl)->getAttribute(ATTR_HREF).string().trimmed(); -- return !href.isNull() ? impl->document()->completeURL(href) : DOMString(); -+ const DOMString href = static_cast<ElementImpl*>(impl)->getAttribute(ATTR_HREF).trimSpaces(); -+ return !href.isNull() ? impl->document()->completeURL(href.string()) : href; - } - - void HTMLBaseElement::setHref( const DOMString &value ) -@@ -134,8 +134,8 @@ void HTMLLinkElement::setCharset( const DOMString &value ) - DOMString HTMLLinkElement::href() const - { - if(!impl) return DOMString(); -- const QString href = static_cast<ElementImpl*>(impl)->getAttribute(ATTR_HREF).string().trimmed(); -- return !href.isNull() ? impl->document()->completeURL(href) : DOMString(); -+ const DOMString href = static_cast<ElementImpl*>(impl)->getAttribute(ATTR_HREF).trimSpaces(); -+ return !href.isNull() ? impl->document()->completeURL(href.string()) : href; - } - - void HTMLLinkElement::setHref( const DOMString &value ) -@@ -379,8 +379,8 @@ void HTMLScriptElement::setDefer( bool _defer ) - DOMString HTMLScriptElement::src() const - { - if(!impl) return DOMString(); -- const QString s = ((ElementImpl *)impl)->getAttribute(ATTR_SRC).string().trimmed(); -- return !s.isNull() ? impl->document()->completeURL(s) : DOMString(); -+ const DOMString s = ((ElementImpl *)impl)->getAttribute(ATTR_SRC).trimSpaces(); -+ return !s.isNull() ? impl->document()->completeURL(s.string()) : s; - } - - void HTMLScriptElement::setSrc( const DOMString &value ) -diff --git a/khtml/dom/html_image.cpp b/khtml/dom/html_image.cpp -index db1f5ea..a8b4ae0 100644 ---- a/khtml/dom/html_image.cpp -+++ b/khtml/dom/html_image.cpp -@@ -95,8 +95,8 @@ void HTMLAreaElement::setCoords( const DOMString &value ) - DOMString HTMLAreaElement::href() const - { - if(!impl) return DOMString(); -- const QString href = static_cast<ElementImpl*>(impl)->getAttribute(ATTR_HREF).string().trimmed(); -- return !href.isNull() ? impl->document()->completeURL(href) : DOMString(); -+ const DOMString href = static_cast<ElementImpl*>(impl)->getAttribute(ATTR_HREF).trimSpaces(); -+ return !href.isNull() ? impl->document()->completeURL(href.string()) : href; - } - - void HTMLAreaElement::setHref( const DOMString &value ) -@@ -302,8 +302,8 @@ void HTMLImageElement::setLongDesc( const DOMString &value ) - DOMString HTMLImageElement::src() const - { - if(!impl) return DOMString(); -- const QString s = ((ElementImpl *)impl)->getAttribute(ATTR_SRC).string().trimmed(); -- return !s.isNull() ? impl->document()->completeURL(s) : DOMString(); -+ const DOMString s = ((ElementImpl *)impl)->getAttribute(ATTR_SRC).trimSpaces(); -+ return !s.isNull() ? impl->document()->completeURL(s.string()) : s; - } - - void HTMLImageElement::setSrc( const DOMString &value ) -diff --git a/khtml/dom/html_inline.cpp b/khtml/dom/html_inline.cpp -index c01f668..2f74713 100644 ---- a/khtml/dom/html_inline.cpp -+++ b/khtml/dom/html_inline.cpp -@@ -95,8 +95,8 @@ void HTMLAnchorElement::setCoords( const DOMString &value ) - DOMString HTMLAnchorElement::href() const - { - if(!impl) return DOMString(); -- const QString href = static_cast<ElementImpl*>(impl)->getAttribute(ATTR_HREF).string().trimmed(); -- return !href.isNull() ? impl->document()->completeURL(href) : DOMString(); -+ const DOMString href = static_cast<ElementImpl*>(impl)->getAttribute(ATTR_HREF).trimSpaces(); -+ return !href.isNull() ? impl->document()->completeURL(href.string()) : href; - } - - void HTMLAnchorElement::setHref( const DOMString &value ) -diff --git a/khtml/ecma/kjs_html.cpp b/khtml/ecma/kjs_html.cpp -index ea15929..d5693af 100644 ---- a/khtml/ecma/kjs_html.cpp -+++ b/khtml/ecma/kjs_html.cpp -@@ -1587,8 +1587,8 @@ QHash<int, const HTMLElement::BoundPropInfo*>* HTMLElement::boundPropInfo() - - QString KJS::HTMLElement::getURLArg(unsigned id) const - { -- const QString rel = impl()->getAttribute(id).string().trimmed(); -- return !rel.isNull() ? impl()->document()->completeURL(rel) : rel; -+ const DOMString rel = impl()->getAttribute(id).trimSpaces(); -+ return !rel.isNull() ? impl()->document()->completeURL(rel.string()) : QString(); - } - - DOM::HTMLElementImpl *toHTMLElement(JSValue *val) { -diff --git a/khtml/ecma/xmlhttprequest.cpp b/khtml/ecma/xmlhttprequest.cpp -index f9fae5d..45c5a4b 100644 ---- a/khtml/ecma/xmlhttprequest.cpp -+++ b/khtml/ecma/xmlhttprequest.cpp -@@ -906,7 +906,8 @@ JSValue *XMLHttpRequestProtoFunc::callAsFunction(ExecState *exec, JSObject *this - return throwError(exec, SyntaxError, "Not enough arguments"); - - QString method = args[0]->toString(exec).qstring(); -- KUrl url = KUrl(request->doc->completeURL(args[1]->toString(exec).qstring())); -+ DOMString urlArg = args[1]->toString(exec).domString().trimSpaces(); -+ KUrl url = KUrl(request->doc->completeURL(urlArg.string())); - - bool async = true; - if (args.size() >= 3) { -diff --git a/khtml/html/html_baseimpl.cpp b/khtml/html/html_baseimpl.cpp -index 5b4a77a..102b56e 100644 ---- a/khtml/html/html_baseimpl.cpp -+++ b/khtml/html/html_baseimpl.cpp -@@ -71,7 +71,7 @@ void HTMLBodyElementImpl::parseAttribute(AttributeImpl *attr) - - case ATTR_BACKGROUND: - { -- QString url = attr->val()->string().trimmed(); -+ QString url = attr->value().trimSpaces().string(); - if (!url.isEmpty()) { - url = document()->completeURL( url ); - addCSSProperty(CSS_PROP_BACKGROUND_IMAGE, DOMString("url('"+url+"')") ); -@@ -325,7 +325,7 @@ void HTMLFrameElementImpl::parseAttribute(AttributeImpl *attr) - switch(attr->id()) - { - case ATTR_SRC: -- setLocation(attr->value().string().trimmed()); -+ setLocation(attr->value().trimSpaces().string()); - break; - case ATTR_FRAMEBORDER: - { -@@ -755,7 +755,7 @@ void HTMLIFrameElementImpl::parseAttribute(AttributeImpl *attr ) - addHTMLAlignment( attr->value() ); - break; - case ATTR_SRC: -- url = attr->value().string().trimmed(); -+ url = attr->value().trimSpaces().string(); - setNeedComputeContent(); - // ### synchronously start the process? - break; -diff --git a/khtml/html/html_formimpl.cpp b/khtml/html/html_formimpl.cpp -index 134851a..d227481 100644 ---- a/khtml/html/html_formimpl.cpp -+++ b/khtml/html/html_formimpl.cpp -@@ -679,7 +679,7 @@ void HTMLFormElementImpl::submit( ) - } - #endif // KHTML_NO_WALLET - -- QString url = getAttribute(ATTR_ACTION).string().trimmed(); -+ QString url = getAttribute(ATTR_ACTION).trimSpaces().string(); - // ignore base url if 'action' attribute is empty. - if (url.isEmpty()) - url = formUrl.url(); -diff --git a/khtml/html/html_headimpl.cpp b/khtml/html/html_headimpl.cpp -index 0de904d..a265ae1 100644 ---- a/khtml/html/html_headimpl.cpp -+++ b/khtml/html/html_headimpl.cpp -@@ -55,7 +55,7 @@ void HTMLBaseElementImpl::parseAttribute(AttributeImpl *attr) - switch(attr->id()) - { - case ATTR_HREF: -- m_href = attr->value().string().trimmed(); -+ m_href = attr->value().trimSpaces().string(); - process(); - break; - case ATTR_TARGET: -@@ -116,9 +116,9 @@ void HTMLLinkElementImpl::parseAttribute(AttributeImpl *attr) - switch (attr->id()) - { - case ATTR_HREF: { -- const QString hrefUrl = attr->val()->string().trimmed(); -+ const DOMString hrefUrl = attr->value().trimSpaces(); - if (!hrefUrl.isEmpty()) { -- m_url = document()->completeURL(hrefUrl); -+ m_url = document()->completeURL(hrefUrl.string()); - } - process(); - break; -@@ -385,7 +385,7 @@ void HTMLScriptElementImpl::parseAttribute(AttributeImpl *attr) - // we'll only start doing things once we get insertedIntoDocument() - if (m_evaluated || m_cachedScript || m_createdByParser || !inDocument()) - return; -- QString url = attr->value().string().trimmed(); -+ const DOMString url = attr->value().trimSpaces(); - if (!url.isEmpty()) - loadFromUrl(url); - break; -@@ -490,7 +490,7 @@ void HTMLScriptElementImpl::insertedIntoDocument() - if (m_createdByParser) - return; - -- QString url = getAttribute(ATTR_SRC).string().trimmed(); -+ const DOMString url = getAttribute(ATTR_SRC).trimSpaces(); - if (!url.isEmpty()) { - loadFromUrl(url); - return; -@@ -622,7 +622,7 @@ void HTMLScriptElementImpl::setDefer(bool defer) - - DOMString HTMLScriptElementImpl::src() const - { -- return document()->completeURL(getAttribute(ATTR_SRC).string().trimmed()); -+ return document()->completeURL(getAttribute(ATTR_SRC).trimSpaces().string()); - } - - void HTMLScriptElementImpl::setSrc(const DOMString &value) -diff --git a/khtml/html/html_imageimpl.cpp b/khtml/html/html_imageimpl.cpp -index 51695a8..15a8302 100644 ---- a/khtml/html/html_imageimpl.cpp -+++ b/khtml/html/html_imageimpl.cpp -@@ -84,7 +84,7 @@ void HTMLImageElementImpl::parseAttribute(AttributeImpl *attr) - setChanged(); - - //Start loading the image already, to generate events -- const QString imgSrcUrl = attr->value().string().trimmed(); -+ const DOMString imgSrcUrl = attr->value().trimSpaces(); - if (!imgSrcUrl.isEmpty()) { //### why do we not hide or something when setting this? - CachedImage* newImage = document()->docLoader()->requestImage(imgSrcUrl); - if (newImage && newImage != m_image) { -@@ -151,7 +151,7 @@ void HTMLImageElementImpl::parseAttribute(AttributeImpl *attr) - if ( attr->value()[0] == '#' ) - usemap = attr->value().lower(); - else { -- QString url = document()->completeURL(attr->value().string().trimmed()); -+ QString url = document()->completeURL(attr->value().trimSpaces().string()); - // ### we remove the part before the anchor and hope - // the map is on the same html page.... - usemap = url; -@@ -438,7 +438,7 @@ void HTMLMapElementImpl::parseAttribute(AttributeImpl *attr) - } - else { - // add name with full url: -- const QString url = document()->completeURL(attr->value().string().trimmed()); -+ const QString url = document()->completeURL(attr->value().trimSpaces().string()); - if(document()->isHTMLDocument()) - static_cast<HTMLDocumentImpl*>(document())->mapMap[url] = this; - } -diff --git a/khtml/html/html_inlineimpl.cpp b/khtml/html/html_inlineimpl.cpp -index fc2e6f6..6e9bdd8 100644 ---- a/khtml/html/html_inlineimpl.cpp -+++ b/khtml/html/html_inlineimpl.cpp -@@ -81,7 +81,7 @@ void HTMLAnchorElementImpl::defaultEventHandler(EventImpl *evt) - if (k->qKeyEvent()) k->qKeyEvent()->accept(); - } - -- QString url = getAttribute(ATTR_HREF).string().trimmed(); -+ QString url = getAttribute(ATTR_HREF).trimSpaces().string(); - QString utarget = getAttribute(ATTR_TARGET).string(); - - if ( e && e->button() == 1 ) -diff --git a/khtml/html/html_objectimpl.cpp b/khtml/html/html_objectimpl.cpp -index 863afe6..f5aef26 100644 ---- a/khtml/html/html_objectimpl.cpp -+++ b/khtml/html/html_objectimpl.cpp -@@ -695,7 +695,7 @@ void HTMLEmbedElementImpl::parseAttribute(AttributeImpl *attr) - { - case ATTR_CODE: - case ATTR_SRC: -- url = attr->val()->string().trimmed(); -+ url = attr->value().trimSpaces().string(); - setNeedComputeContent(); - break; - case ATTR_BORDER: -@@ -775,7 +775,7 @@ void HTMLObjectElementImpl::parseAttribute(AttributeImpl *attr) - switch ( attr->id() ) - { - case ATTR_DATA: -- url = attr->val()->string().trimmed(); -+ url = attr->value().trimSpaces().string(); - setNeedComputeContent(); - break; - case ATTR_CLASSID: -diff --git a/khtml/html/html_tableimpl.cpp b/khtml/html/html_tableimpl.cpp -index 8323093..c135545 100644 ---- a/khtml/html/html_tableimpl.cpp -+++ b/khtml/html/html_tableimpl.cpp -@@ -495,7 +495,7 @@ void HTMLTableElementImpl::parseAttribute(AttributeImpl *attr) - break; - case ATTR_BACKGROUND: - { -- QString url = attr->val()->string().trimmed(); -+ QString url = attr->value().trimSpaces().string(); - if (!url.isEmpty()) { - url = document()->completeURL( url ); - addCSSProperty(CSS_PROP_BACKGROUND_IMAGE, DOMString("url('"+url+"')") ); -@@ -638,7 +638,7 @@ void HTMLTablePartElementImpl::parseAttribute(AttributeImpl *attr) - break; - case ATTR_BACKGROUND: - { -- QString url = attr->val()->string().trimmed(); -+ QString url = attr->value().trimSpaces().string(); - if (!url.isEmpty()) { - url = document()->completeURL( url ); - addCSSProperty(CSS_PROP_BACKGROUND_IMAGE, DOMString("url('"+url+"')") ); -diff --git a/khtml/html/htmlparser.cpp b/khtml/html/htmlparser.cpp -index ce5be3e..49b8068 100644 ---- a/khtml/html/htmlparser.cpp -+++ b/khtml/html/htmlparser.cpp -@@ -974,7 +974,7 @@ NodeImpl *KHTMLParser::getElement(Token* t) - KHTMLGlobal::defaultHTMLSettings()->isHideAdsEnabled() && - !strcasecmp( t->attrs->getValue( ATTR_TYPE ), "image" ) ) - { -- const QString url = doc()->completeURL(t->attrs->getValue(ATTR_SRC)->string().trimmed()); -+ const QString url = doc()->completeURL(DOMString(t->attrs->getValue(ATTR_SRC)).trimSpaces().string()); - if (KHTMLGlobal::defaultHTMLSettings()->isAdFiltered(url)) - return 0; - } -@@ -1104,7 +1104,7 @@ NodeImpl *KHTMLParser::getElement(Token* t) - KHTMLGlobal::defaultHTMLSettings()->isAdFilterEnabled()&& - KHTMLGlobal::defaultHTMLSettings()->isHideAdsEnabled()) - { -- const QString url = doc()->completeURL(t->attrs->getValue(ATTR_SRC)->string().trimmed()); -+ const QString url = doc()->completeURL(DOMString(t->attrs->getValue(ATTR_SRC)).trimSpaces().string()); - if (KHTMLGlobal::defaultHTMLSettings()->isAdFiltered(url)) - return 0; - } -diff --git a/khtml/html/htmlprospectivetokenizer.cpp b/khtml/html/htmlprospectivetokenizer.cpp -index 83c4c16..585a449 100644 ---- a/khtml/html/htmlprospectivetokenizer.cpp -+++ b/khtml/html/htmlprospectivetokenizer.cpp -@@ -706,7 +706,7 @@ void ProspectiveTokenizer::processAttribute() - LocalName attrLocal = LocalName::fromString(&attrDS, IDS_NormalizeLower); - uint attribute = attrLocal.id(); - if (attribute == localNamePart(ATTR_SRC) && m_urlToLoad.isEmpty()) -- m_urlToLoad = DOMString(QString(m_attributeValue.data(), m_attributeValue.size()).trimmed()); -+ m_urlToLoad = DOMString(m_attributeValue.data(), m_attributeValue.size()).trimSpaces(); - break; - } - case ID_LINK: -@@ -715,7 +715,7 @@ void ProspectiveTokenizer::processAttribute() - LocalName attrLocal = LocalName::fromString(&attrDS, IDS_NormalizeLower); - uint attribute = attrLocal.id(); - if (attribute == localNamePart(ATTR_HREF) && m_urlToLoad.isEmpty()) -- m_urlToLoad = DOMString(QString(m_attributeValue.data(), m_attributeValue.size()).trimmed()); -+ m_urlToLoad = DOMString(m_attributeValue.data(), m_attributeValue.size()).trimSpaces(); - else if (attribute == localNamePart(ATTR_REL)) { - DOMStringImpl* lowerAttribute = DOMStringImpl(DOMStringImpl::ShallowCopy, m_attributeValue.data(), m_attributeValue.size()).lower(); - QString val = lowerAttribute->string(); -diff --git a/khtml/khtml_part.cpp b/khtml/khtml_part.cpp -index 15ea3c9..6c4ed17 100644 ---- a/khtml/khtml_part.cpp -+++ b/khtml/khtml_part.cpp -@@ -6420,7 +6420,7 @@ bool KHTMLPart::handleMouseMoveEventDrag(khtml::MouseMoveEvent *event) - if (url.isEmpty() && innerNodeImpl && innerNodeImpl->id() == ID_IMG) - { - img = static_cast<HTMLImageElementImpl *>(innerNodeImpl); -- u = completeURL(img->getAttribute(ATTR_SRC).string().trimmed()); -+ u = completeURL(img->getAttribute(ATTR_SRC).trimSpaces().string()); - pix = KIconLoader::global()->loadIcon("image-x-generic", KIconLoader::Desktop); - } - else -@@ -6719,7 +6719,7 @@ void KHTMLPart::runAdFilter() - node->id() == ID_IFRAME || - (node->id() == ID_INPUT && static_cast<HTMLInputElementImpl *>(node)->inputType() == HTMLInputElementImpl::IMAGE )) - { -- if (KHTMLGlobal::defaultHTMLSettings()->isAdFiltered(d->m_doc->completeURL(static_cast<ElementImpl *>(node)->getAttribute(ATTR_SRC).string().trimmed()))) -+ if (KHTMLGlobal::defaultHTMLSettings()->isAdFiltered(d->m_doc->completeURL(static_cast<ElementImpl *>(node)->getAttribute(ATTR_SRC).trimSpaces().string()))) - { - // Since any kids of node will be deleted, too, fastforward nextNode - // until we get outside of node. -diff --git a/khtml/khtmlview.cpp b/khtml/khtmlview.cpp -index 0c4e317..8078fdc 100644 ---- a/khtml/khtmlview.cpp -+++ b/khtml/khtmlview.cpp -@@ -2780,7 +2780,7 @@ QMap< ElementImpl*, QChar > KHTMLView::buildFallbackAccessKeys() const - bool text_before = false; - switch( element->id()) { - case ID_A: -- url = element->getAttribute(ATTR_HREF).string().trimmed(); -+ url = element->getAttribute(ATTR_HREF).trimSpaces().string(); - if( url.isEmpty()) // doesn't have href, it's only an anchor - continue; - text = static_cast< HTMLElementImpl* >( element )->innerText().string().simplified(); -diff --git a/khtml/rendering/render_image.cpp b/khtml/rendering/render_image.cpp -index dee27ab..6741858 100644 ---- a/khtml/rendering/render_image.cpp -+++ b/khtml/rendering/render_image.cpp -@@ -427,16 +427,16 @@ void RenderImage::updateFromElement() - else if (element()->id() == ID_IMG) - alt = static_cast<HTMLImageElementImpl*>(element())->altText(); - -- const QString u = element()->id() == ID_OBJECT ? -- element()->getAttribute(ATTR_DATA).string().trimmed() : element()->getAttribute(ATTR_SRC).string().trimmed(); -+ const DOMString u = element()->id() == ID_OBJECT ? -+ element()->getAttribute(ATTR_DATA).trimSpaces() : element()->getAttribute(ATTR_SRC).trimSpaces(); - - if (!u.isEmpty()) { - // Need to compute completeURL, as 'u' can be relative - // while m_cachedImage->url() is always full url - DocumentImpl *docImpl = element()->document(); -- const QString fullUrl = docImpl->completeURL(u); -+ const QString fullUrl = docImpl->completeURL(u.string()); - if (!m_cachedImage || m_cachedImage->url() != fullUrl) { -- CachedImage *new_image = docImpl->docLoader()->requestImage(fullUrl); -+ CachedImage *new_image = docImpl->docLoader()->requestImage(DOMString(fullUrl)); - if (new_image && new_image != m_cachedImage) { - updateImage(new_image); - } -diff --git a/khtml/xml/dom_docimpl.cpp b/khtml/xml/dom_docimpl.cpp -index 0a3e4ed..b8e5910 100644 ---- a/khtml/xml/dom_docimpl.cpp -+++ b/khtml/xml/dom_docimpl.cpp -@@ -1979,7 +1979,7 @@ void DocumentImpl::processHttpEquiv(const DOMString &equiv, const DOMString &con - v->part()->scheduleRedirection(delay, v->part()->url().url() ); - } else { - pos++; -- while(pos < (int)str.length() && str[pos].isSpace()) pos++; -+ while(pos < str.length() && str[pos].isSpace()) pos++; - str = str.mid(pos); - if(str.indexOf("url", 0, Qt::CaseInsensitive ) == 0) str = str.mid(3); - str = str.trimmed(); -@@ -1987,7 +1987,8 @@ void DocumentImpl::processHttpEquiv(const DOMString &equiv, const DOMString &con - while (str.length() && (str[str.length()-1] == ';' || str[str.length()-1] == ',')) { - str.resize(str.length()-1); - } -- QString newURL = document()->completeURL(str.trimmed()); -+ str = DOMString(str).trimSpaces().string(); -+ QString newURL = document()->completeURL(str); - if ( ok ) - v->part()->scheduleRedirection(delay, newURL, delay < 2 || newURL == URL().url()); - } -@@ -2047,7 +2048,7 @@ bool DocumentImpl::prepareMouseEvent( bool readonly, int _x, int _y, MouseEvent - //qDebug("urlnode: %s (%d)", getTagName(renderInfo.URLElement()->id()).string().toLatin1().constData(), renderInfo.URLElement()->id()); - - ElementImpl* e = static_cast<ElementImpl*>(renderInfo.URLElement()); -- const DOMString href = e->getAttribute(ATTR_HREF).string().trimmed(); -+ const DOMString href = e->getAttribute(ATTR_HREF).trimSpaces(); - const DOMString target = e->getAttribute(ATTR_TARGET); - - if (!target.isNull() && !href.isNull()) { --- -2.0.4 - |