OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
3 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
4 * (C) 2001 Dirk Mueller (mueller@kde.org) | 4 * (C) 2001 Dirk Mueller (mueller@kde.org) |
5 * Copyright (C) 2003, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights | 5 * Copyright (C) 2003, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights |
6 * reserved. | 6 * reserved. |
7 * Copyright (C) 2009 Rob Buis (rwlbuis@gmail.com) | 7 * Copyright (C) 2009 Rob Buis (rwlbuis@gmail.com) |
8 * Copyright (C) 2011 Google Inc. All rights reserved. | 8 * Copyright (C) 2011 Google Inc. All rights reserved. |
9 * | 9 * |
10 * This library is free software; you can redistribute it and/or | 10 * This library is free software; you can redistribute it and/or |
(...skipping 306 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
317 // If the link element is not css, ignore it. | 317 // If the link element is not css, ignore it. |
318 if (equalIgnoringCase(getAttribute(typeAttr), "text/css")) { | 318 if (equalIgnoringCase(getAttribute(typeAttr), "text/css")) { |
319 // FIXME: Add support for extracting links of sub-resources which | 319 // FIXME: Add support for extracting links of sub-resources which |
320 // are inside style-sheet such as @import, @font-face, url(), etc. | 320 // are inside style-sheet such as @import, @font-face, url(), etc. |
321 return hrefAttr; | 321 return hrefAttr; |
322 } | 322 } |
323 return HTMLElement::subResourceAttributeName(); | 323 return HTMLElement::subResourceAttributeName(); |
324 } | 324 } |
325 | 325 |
326 KURL HTMLLinkElement::href() const { | 326 KURL HTMLLinkElement::href() const { |
327 return document().completeURL(getAttribute(hrefAttr)); | 327 const String& url = getAttribute(hrefAttr); |
| 328 if (url.isEmpty()) |
| 329 return KURL(); |
| 330 return document().completeURL(url); |
328 } | 331 } |
329 | 332 |
330 const AtomicString& HTMLLinkElement::rel() const { | 333 const AtomicString& HTMLLinkElement::rel() const { |
331 return getAttribute(relAttr); | 334 return getAttribute(relAttr); |
332 } | 335 } |
333 | 336 |
334 const AtomicString& HTMLLinkElement::type() const { | 337 const AtomicString& HTMLLinkElement::type() const { |
335 return getAttribute(typeAttr); | 338 return getAttribute(typeAttr); |
336 } | 339 } |
337 | 340 |
(...skipping 22 matching lines...) Expand all Loading... |
360 LinkLoaderClient::trace(visitor); | 363 LinkLoaderClient::trace(visitor); |
361 DOMTokenListObserver::trace(visitor); | 364 DOMTokenListObserver::trace(visitor); |
362 } | 365 } |
363 | 366 |
364 DEFINE_TRACE_WRAPPERS(HTMLLinkElement) { | 367 DEFINE_TRACE_WRAPPERS(HTMLLinkElement) { |
365 visitor->traceWrappers(m_relList); | 368 visitor->traceWrappers(m_relList); |
366 HTMLElement::traceWrappers(visitor); | 369 HTMLElement::traceWrappers(visitor); |
367 } | 370 } |
368 | 371 |
369 } // namespace blink | 372 } // namespace blink |
OLD | NEW |