author | Edgar Chen <echen@mozilla.com> |
Sat, 16 Apr 2016 16:50:02 -0400 | |
changeset 316209 | 4f435a5a9ad06c507d79637bcd336cf7f9d3f955 |
parent 316208 | 82d198b87307cbd4c6f2ced19bee980d819877aa |
child 316210 | 8625d6dd0df7651cf8ca7dc120e644b0b3679ff3 |
push id | 30766 |
push user | philringnalda@gmail.com |
push date | Tue, 04 Oct 2016 03:09:34 +0000 |
treeherder | mozilla-central@c8a660c5f105 [default view] [failures only] |
perfherder | [talos] [build metrics] [platform microbench] (compared to previous push) |
reviewers | jdm |
bugs | 1306007 |
milestone | 52.0a1 |
first release with | nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
|
last release without | nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
|
dom/html/HTMLImageElement.cpp | file | annotate | diff | comparison | revisions | |
dom/html/HTMLImageElement.h | file | annotate | diff | comparison | revisions |
--- a/dom/html/HTMLImageElement.cpp +++ b/dom/html/HTMLImageElement.cpp @@ -1195,59 +1195,50 @@ HTMLImageElement::SourceElementMatches(n !SupportedPictureSourceType(type)) { return false; } return true; } bool -HTMLImageElement::TryCreateResponsiveSelector(nsIContent *aSourceNode, - const nsAString *aSrcset, - const nsAString *aSizes) +HTMLImageElement::TryCreateResponsiveSelector(nsIContent *aSourceNode) { // Skip if this is not a <source> with matching media query bool isSourceTag = aSourceNode->IsHTMLElement(nsGkAtoms::source); if (isSourceTag) { if (!SourceElementMatches(aSourceNode)) { return false; } } else if (aSourceNode->IsHTMLElement(nsGkAtoms::img)) { // Otherwise this is the <img> tag itself MOZ_ASSERT(aSourceNode == this); } // Skip if has no srcset or an empty srcset nsString srcset; - if (aSrcset) { - srcset = *aSrcset; - } else if (!aSourceNode->GetAttr(kNameSpaceID_None, nsGkAtoms::srcset, - srcset)) { + if (!aSourceNode->GetAttr(kNameSpaceID_None, nsGkAtoms::srcset, srcset)) { return false; } if (srcset.IsEmpty()) { return false; } // Try to parse RefPtr<ResponsiveImageSelector> sel = new ResponsiveImageSelector(aSourceNode); if (!sel->SetCandidatesFromSourceSet(srcset)) { // No possible candidates, don't need to bother parsing sizes return false; } - if (aSizes) { - sel->SetSizesFromDescriptor(*aSizes); - } else { - nsAutoString sizes; - aSourceNode->GetAttr(kNameSpaceID_None, nsGkAtoms::sizes, sizes); - sel->SetSizesFromDescriptor(sizes); - } + nsAutoString sizes; + aSourceNode->GetAttr(kNameSpaceID_None, nsGkAtoms::sizes, sizes); + sel->SetSizesFromDescriptor(sizes); // If this is the <img> tag, also pull in src as the default source if (!isSourceTag) { MOZ_ASSERT(aSourceNode == this); nsAutoString src; if (GetAttr(kNameSpaceID_None, nsGkAtoms::src, src) && !src.IsEmpty()) { sel->SetDefaultSource(src); }
--- a/dom/html/HTMLImageElement.h +++ b/dom/html/HTMLImageElement.h @@ -326,19 +326,17 @@ protected: bool UpdateResponsiveSource(); // Given a <source> node that is a previous sibling *or* ourselves, try to // create a ResponsiveSelector. // If the node's srcset/sizes make for an invalid selector, returns // false. This does not guarantee the resulting selector matches an image, // only that it is valid. - bool TryCreateResponsiveSelector(nsIContent *aSourceNode, - const nsAString *aSrcset = nullptr, - const nsAString *aSizes = nullptr); + bool TryCreateResponsiveSelector(nsIContent *aSourceNode); CSSIntPoint GetXY(); virtual JSObject* WrapNode(JSContext *aCx, JS::Handle<JSObject*> aGivenProto) override; void UpdateFormOwner(); virtual nsresult BeforeSetAttr(int32_t aNameSpaceID, nsIAtom* aName, nsAttrValueOrString* aValue, bool aNotify) override;