зеркало из https://github.com/mozilla/gecko-dev.git
Merge mozilla-central to b2g-inbound
This commit is contained in:
Коммит
d22b2c9770
|
@ -299,33 +299,18 @@ FocusManager::ProcessFocusEvent(AccEvent* aEvent)
|
|||
// Fire menu start/end events for ARIA menus.
|
||||
if (target->IsARIARole(nsGkAtoms::menuitem)) {
|
||||
// The focus was moved into menu.
|
||||
bool tryOwnsParent = true;
|
||||
Accessible* ARIAMenubar = nullptr;
|
||||
Accessible* child = target;
|
||||
Accessible* parent = child->Parent();
|
||||
while (parent) {
|
||||
nsRoleMapEntry* roleMap = parent->ARIARoleMap();
|
||||
if (roleMap) {
|
||||
if (roleMap->Is(nsGkAtoms::menubar)) {
|
||||
ARIAMenubar = parent;
|
||||
break;
|
||||
}
|
||||
|
||||
// Go up in the parent chain of the menu hierarchy.
|
||||
if (roleMap->Is(nsGkAtoms::menuitem) || roleMap->Is(nsGkAtoms::menu)) {
|
||||
child = parent;
|
||||
parent = child->Parent();
|
||||
tryOwnsParent = true;
|
||||
continue;
|
||||
}
|
||||
for (Accessible* parent = target->Parent(); parent; parent = parent->Parent()) {
|
||||
if (parent->IsARIARole(nsGkAtoms::menubar)) {
|
||||
ARIAMenubar = parent;
|
||||
break;
|
||||
}
|
||||
|
||||
// If no required context role then check aria-owns relation.
|
||||
if (!tryOwnsParent)
|
||||
// Go up in the parent chain of the menu hierarchy.
|
||||
if (!parent->IsARIARole(nsGkAtoms::menuitem) &&
|
||||
!parent->IsARIARole(nsGkAtoms::menu)) {
|
||||
break;
|
||||
|
||||
parent = ARIAOwnedByIterator(child).Next();
|
||||
tryOwnsParent = false;
|
||||
}
|
||||
}
|
||||
|
||||
if (ARIAMenubar != mActiveARIAMenubar) {
|
||||
|
|
|
@ -230,12 +230,11 @@ NotificationController::WillRefresh(mozilla::TimeStamp aTime)
|
|||
nsIContent* containerElm = containerNode->IsElement() ?
|
||||
containerNode->AsElement() : nullptr;
|
||||
|
||||
nsAutoString text;
|
||||
textFrame->GetRenderedText(&text);
|
||||
nsIFrame::RenderedText text = textFrame->GetRenderedText();
|
||||
|
||||
// Remove text accessible if rendered text is empty.
|
||||
if (textAcc) {
|
||||
if (text.IsEmpty()) {
|
||||
if (text.mString.IsEmpty()) {
|
||||
#ifdef A11Y_LOG
|
||||
if (logging::IsEnabled(logging::eTree | logging::eText)) {
|
||||
logging::MsgBegin("TREE", "text node lost its content");
|
||||
|
@ -258,17 +257,17 @@ NotificationController::WillRefresh(mozilla::TimeStamp aTime)
|
|||
logging::MsgEntry("old text '%s'",
|
||||
NS_ConvertUTF16toUTF8(textAcc->AsTextLeaf()->Text()).get());
|
||||
logging::MsgEntry("new text: '%s'",
|
||||
NS_ConvertUTF16toUTF8(text).get());
|
||||
NS_ConvertUTF16toUTF8(text.mString).get());
|
||||
logging::MsgEnd();
|
||||
}
|
||||
#endif
|
||||
|
||||
TextUpdater::Run(mDocument, textAcc->AsTextLeaf(), text);
|
||||
TextUpdater::Run(mDocument, textAcc->AsTextLeaf(), text.mString);
|
||||
continue;
|
||||
}
|
||||
|
||||
// Append an accessible if rendered text is not empty.
|
||||
if (!text.IsEmpty()) {
|
||||
if (!text.mString.IsEmpty()) {
|
||||
#ifdef A11Y_LOG
|
||||
if (logging::IsEnabled(logging::eTree | logging::eText)) {
|
||||
logging::MsgBegin("TREE", "text node gains new content");
|
||||
|
|
|
@ -1091,12 +1091,11 @@ nsAccessibilityService::GetOrCreateAccessible(nsINode* aNode,
|
|||
|
||||
// Create accessible for visible text frames.
|
||||
if (content->IsNodeOfType(nsINode::eTEXT)) {
|
||||
nsAutoString text;
|
||||
frame->GetRenderedText(&text, nullptr, nullptr, 0, UINT32_MAX);
|
||||
nsIFrame::RenderedText text = frame->GetRenderedText();
|
||||
// Ignore not rendered text nodes and whitespace text nodes between table
|
||||
// cells.
|
||||
if (text.IsEmpty() ||
|
||||
(aContext->IsTableRow() && nsCoreUtils::IsWhitespaceString(text))) {
|
||||
if (text.mString.IsEmpty() ||
|
||||
(aContext->IsTableRow() && nsCoreUtils::IsWhitespaceString(text.mString))) {
|
||||
if (aIsSubtreeHidden)
|
||||
*aIsSubtreeHidden = true;
|
||||
|
||||
|
@ -1108,7 +1107,7 @@ nsAccessibilityService::GetOrCreateAccessible(nsINode* aNode,
|
|||
return nullptr;
|
||||
|
||||
document->BindToDocument(newAcc, nullptr);
|
||||
newAcc->AsTextLeaf()->SetText(text);
|
||||
newAcc->AsTextLeaf()->SetText(text.mString);
|
||||
return newAcc;
|
||||
}
|
||||
|
||||
|
|
|
@ -139,8 +139,8 @@ nsTextEquivUtils::AppendTextEquivFromTextContent(nsIContent *aContent,
|
|||
if (aContent->TextLength() > 0) {
|
||||
nsIFrame *frame = aContent->GetPrimaryFrame();
|
||||
if (frame) {
|
||||
nsresult rv = frame->GetRenderedText(aString);
|
||||
NS_ENSURE_SUCCESS(rv, rv);
|
||||
nsIFrame::RenderedText text = frame->GetRenderedText();
|
||||
aString->Append(text.mString);
|
||||
} else {
|
||||
// If aContent is an object that is display: none, we have no a frame.
|
||||
aContent->AppendTextTo(*aString);
|
||||
|
|
|
@ -394,10 +394,10 @@ Accessible::VisibilityState()
|
|||
if (frame->GetType() == nsGkAtoms::textFrame &&
|
||||
!(frame->GetStateBits() & NS_FRAME_OUT_OF_FLOW) &&
|
||||
frame->GetRect().IsEmpty()) {
|
||||
nsAutoString renderedText;
|
||||
frame->GetRenderedText(&renderedText, nullptr, nullptr, 0, 1);
|
||||
if (renderedText.IsEmpty())
|
||||
nsIFrame::RenderedText text = frame->GetRenderedText();
|
||||
if (text.mString.IsEmpty()) {
|
||||
return states::INVISIBLE;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
|
|
@ -1984,17 +1984,9 @@ HyperTextAccessible::ContentToRenderedOffset(nsIFrame* aFrame, int32_t aContentO
|
|||
NS_ASSERTION(aFrame->GetPrevContinuation() == nullptr,
|
||||
"Call on primary frame only");
|
||||
|
||||
gfxSkipChars skipChars;
|
||||
gfxSkipCharsIterator iter;
|
||||
// Only get info up to original offset, we know that will be larger than skipped offset
|
||||
nsresult rv = aFrame->GetRenderedText(nullptr, &skipChars, &iter, 0, aContentOffset);
|
||||
NS_ENSURE_SUCCESS(rv, rv);
|
||||
|
||||
uint32_t ourRenderedStart = iter.GetSkippedOffset();
|
||||
int32_t ourContentStart = iter.GetOriginalOffset();
|
||||
|
||||
*aRenderedOffset = iter.ConvertOriginalToSkipped(aContentOffset + ourContentStart) -
|
||||
ourRenderedStart;
|
||||
nsIFrame::RenderedText text = aFrame->GetRenderedText(aContentOffset,
|
||||
aContentOffset + 1);
|
||||
*aRenderedOffset = text.mOffsetWithinNodeRenderedText;
|
||||
|
||||
return NS_OK;
|
||||
}
|
||||
|
@ -2016,16 +2008,9 @@ HyperTextAccessible::RenderedToContentOffset(nsIFrame* aFrame, uint32_t aRendere
|
|||
NS_ASSERTION(aFrame->GetPrevContinuation() == nullptr,
|
||||
"Call on primary frame only");
|
||||
|
||||
gfxSkipChars skipChars;
|
||||
gfxSkipCharsIterator iter;
|
||||
// We only need info up to skipped offset -- that is what we're converting to original offset
|
||||
nsresult rv = aFrame->GetRenderedText(nullptr, &skipChars, &iter, 0, aRenderedOffset);
|
||||
NS_ENSURE_SUCCESS(rv, rv);
|
||||
|
||||
uint32_t ourRenderedStart = iter.GetSkippedOffset();
|
||||
int32_t ourContentStart = iter.GetOriginalOffset();
|
||||
|
||||
*aContentOffset = iter.ConvertSkippedToOriginal(aRenderedOffset + ourRenderedStart) - ourContentStart;
|
||||
nsIFrame::RenderedText text = aFrame->GetRenderedText(aRenderedOffset,
|
||||
aRenderedOffset + 1, nsIFrame::TextOffsetType::OFFSETS_IN_RENDERED_TEXT);
|
||||
*aContentOffset = text.mOffsetWithinNodeText;
|
||||
|
||||
return NS_OK;
|
||||
}
|
||||
|
|
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
|
@ -46,6 +46,21 @@ public:
|
|||
|
||||
uint32_t ChildrenCount() const { return mChildren.Length(); }
|
||||
ProxyAccessible* ChildAt(uint32_t aIdx) const { return mChildren[aIdx]; }
|
||||
ProxyAccessible* FirstChild() const
|
||||
{ return mChildren.Length() ? mChildren[0] : nullptr; }
|
||||
ProxyAccessible* LastChild() const
|
||||
{ return mChildren.Length() ? mChildren[mChildren.Length() - 1] : nullptr; }
|
||||
ProxyAccessible* PrevSibling() const
|
||||
{
|
||||
size_t idx = IndexInParent();
|
||||
return idx > 0 ? Parent()->mChildren[idx - 1] : nullptr;
|
||||
}
|
||||
ProxyAccessible* NextSibling() const
|
||||
{
|
||||
size_t idx = IndexInParent();
|
||||
return idx < Parent()->mChildren.Length() ? Parent()->mChildren[idx + 1]
|
||||
: nullptr;
|
||||
}
|
||||
|
||||
// XXX evaluate if this is fast enough.
|
||||
size_t IndexInParent() const { return Parent()->mChildren.IndexOf(this); }
|
||||
|
|
|
@ -113,7 +113,7 @@
|
|||
'A esoteric weapon wielded by only the most ' +
|
||||
'formidable warriors, for its unrelenting strict' +
|
||||
' power is unfathomable.',
|
||||
'• Lists of Programming Languages', 'Lisp ',
|
||||
'• Lists of Programming Languages', 'Lisp',
|
||||
'1. Scheme', '2. Racket', '3. Clojure',
|
||||
'4. Standard Lisp', 'link-0', ' Lisp',
|
||||
'checkbox-1-5', ' LeLisp', '• JavaScript',
|
||||
|
@ -124,7 +124,7 @@
|
|||
'5 8', 'gridcell4', 'Just an innocuous separator',
|
||||
'Dirty Words', 'Meaning', 'Mud', 'Wet Dirt',
|
||||
'Dirt', 'Messy Stuff', 'statusbar-1', 'statusbar-2',
|
||||
'switch-1', 'This is a MathML formula ', 'math-1',
|
||||
'switch-1', 'This is a MathML formula', 'math-1',
|
||||
'with some text after.']);
|
||||
|
||||
queueTraversalSequence(gQueue, docAcc, TraversalRules.Landmark, null,
|
||||
|
|
|
@ -52,7 +52,7 @@
|
|||
gQueue, docAcc, ObjectTraversalRule, null,
|
||||
['Main Title', 'Lorem ipsum ',
|
||||
'dolor', ' sit amet. Integer vitae urna leo, id ',
|
||||
'semper', ' nulla. ', 'Second Section Title',
|
||||
'semper', ' nulla.', 'Second Section Title',
|
||||
'Sed accumsan luctus lacus, vitae mollis arcu tristique vulputate.',
|
||||
'An ', 'embedded', ' document.', 'Hide me', 'Link 1', 'Link 2',
|
||||
'Link 3', 'Hello', 'World']);
|
||||
|
@ -90,7 +90,7 @@
|
|||
gQueue, docAcc, ObjectTraversalRule,
|
||||
getAccessible(doc.getElementById('paragraph-1')),
|
||||
['Lorem ipsum ', 'dolor', ' sit amet. Integer vitae urna leo, id ',
|
||||
'semper', ' nulla. ']);
|
||||
'semper', ' nulla.']);
|
||||
|
||||
gQueue.push(new setModalRootInvoker(docAcc, docAcc.parent,
|
||||
NS_ERROR_INVALID_ARG));
|
||||
|
|
|
@ -16,8 +16,8 @@
|
|||
function doTest()
|
||||
{
|
||||
var iframeDoc = [ getNode("iframe").contentDocument ];
|
||||
testCharacterCount(iframeDoc, 15);
|
||||
testText(iframeDoc, 0, 15, "outbody inbody ");
|
||||
testCharacterCount(iframeDoc, 13);
|
||||
testText(iframeDoc, 0, 13, "outbodyinbody");
|
||||
|
||||
SimpleTest.finish();
|
||||
}
|
||||
|
|
|
@ -58,7 +58,7 @@
|
|||
////////////////////////////////////////////////////////////////////////
|
||||
// getTextAtOffset line boundary
|
||||
|
||||
testTextAtOffset(0, BOUNDARY_LINE_START, "line ", 0, 5,
|
||||
testTextAtOffset(0, BOUNDARY_LINE_START, "line", 0, 4,
|
||||
"hypertext3", kOk, kOk, kOk);
|
||||
|
||||
// XXX: see bug 634202.
|
||||
|
@ -122,7 +122,7 @@
|
|||
|
||||
<div id="nulltext"></div>
|
||||
|
||||
<div id="hypertext">hello <a>friend</a> see <img></div>
|
||||
<div id="hypertext">hello <a>friend</a> see <img src="about:blank"></div>
|
||||
<div id="hypertext2">hello <a>friend</a> see <input></div>
|
||||
<ol id="list">
|
||||
<li id="listitem">foo</li>
|
||||
|
|
|
@ -14,9 +14,9 @@
|
|||
function doTest()
|
||||
{
|
||||
testTextAtOffset("line_test_1", BOUNDARY_LINE_START,
|
||||
[[0, 6, "Line 1 ", 0, 7],
|
||||
[7, 7, "", 7, 7],
|
||||
[8, 15, "Line 3 ", 8, 15]]);
|
||||
[[0, 5, "Line 1", 0, 6],
|
||||
[6, 6, "", 6, 6],
|
||||
[7, 13, "Line 3", 7, 13]]);
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
// __h__e__l__l__o__ __m__y__ __f__r__i__e__n__d__
|
||||
|
@ -114,10 +114,10 @@
|
|||
[ [ 0, 3, "foo\n", 0, 4 ], [ 4, 4, "", 4, 4 ] ]);
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
// 'Hello world ' (\n is rendered as space)
|
||||
// 'Hello world'
|
||||
|
||||
testTextAtOffset([ "ht_4" ], BOUNDARY_LINE_START,
|
||||
[ [ 0, 12, "Hello world ", 0, 12 ] ]);
|
||||
[ [ 0, 11, "Hello world", 0, 11 ] ]);
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
// list items
|
||||
|
|
|
@ -42,27 +42,20 @@
|
|||
[ [ 0, 6, "", 0, 0 ] ]);
|
||||
testTextBeforeOffset(ids, BOUNDARY_WORD_END,
|
||||
[ [ 0, 5, "", 0, 0 ],
|
||||
[ 6, 6, "hello", 0, 5,
|
||||
[ [6, "e2", kTodo, kOk, kTodo ] ]
|
||||
]
|
||||
[ 6, 6, "hello", 0, 5 ]
|
||||
]);
|
||||
|
||||
testTextAtOffset(ids, BOUNDARY_WORD_START,
|
||||
[ [ 0, 6, "hello ", 0, 6 ] ]);
|
||||
testTextAtOffset(ids, BOUNDARY_WORD_END,
|
||||
[ [ 0, 4, "hello", 0, 5 ],
|
||||
[ 5, 6, " ", 5, 6,
|
||||
[ [ 5, "e2", kTodo, kTodo, kOk ],
|
||||
[ 6, "e2", kTodo, kTodo, kOk ] ]
|
||||
]
|
||||
[ 5, 6, " ", 5, 6 ]
|
||||
]);
|
||||
|
||||
testTextAfterOffset(ids, BOUNDARY_WORD_START,
|
||||
[ [ 0, 6, "", 6, 6 ] ]);
|
||||
testTextAfterOffset(ids, BOUNDARY_WORD_END,
|
||||
[ [ 0, 5, " ", 5, 6,
|
||||
[ [ 5, "e2", kTodo, kTodo, kOk ] ]
|
||||
],
|
||||
[ [ 0, 5, " ", 5, 6 ],
|
||||
[ 6, 6, "", 6, 6 ]
|
||||
]);
|
||||
|
||||
|
@ -256,7 +249,7 @@
|
|||
|
||||
<input id="i2" value="hello "/>
|
||||
<pre><div id="d2">hello </div></pre>
|
||||
<div id="e2" contenteditable="true">hello </div>
|
||||
<div id="e2" contenteditable="true" style='white-space:pre'>hello </div>
|
||||
<textarea id="t2">hello </textarea>
|
||||
|
||||
<input id="i6" value="hello all"/>
|
||||
|
|
|
@ -89,7 +89,7 @@
|
|||
gComputedStyle = document.defaultView.getComputedStyle(tempElem, "");
|
||||
attrs = {"color": gComputedStyle.color,
|
||||
"background-color": gComputedStyle.backgroundColor};
|
||||
testTextAttrs(ID, 27, attrs, defAttrs, 27, 50);
|
||||
testTextAttrs(ID, 27, attrs, defAttrs, 27, 49);
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
// area4
|
||||
|
@ -110,7 +110,7 @@
|
|||
tempElem = tempElem.parentNode;
|
||||
gComputedStyle = document.defaultView.getComputedStyle(tempElem, "");
|
||||
attrs = {"color": gComputedStyle.color};
|
||||
testTextAttrs(ID, 34, attrs, defAttrs, 33, 46);
|
||||
testTextAttrs(ID, 34, attrs, defAttrs, 33, 45);
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
// area5: "Green!*!RedNormal"
|
||||
|
@ -144,7 +144,7 @@
|
|||
|
||||
// Normal
|
||||
attrs = {};
|
||||
testTextAttrs(ID, 11, attrs, defAttrs, 11, 18);
|
||||
testTextAttrs(ID, 11, attrs, defAttrs, 11, 17);
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
// area6 (CSS vertical-align property, refer to bug 445938 for details
|
||||
|
@ -323,7 +323,7 @@
|
|||
testTextAttrs(ID, 152, attrs, defAttrs, 151, 164);
|
||||
|
||||
attrs = {};
|
||||
testTextAttrs(ID, 165, attrs, defAttrs, 164, 172);
|
||||
testTextAttrs(ID, 165, attrs, defAttrs, 164, 171);
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
// area10, different single style spans in non-styled paragraph
|
||||
|
@ -383,7 +383,7 @@
|
|||
testTextAttrs(ID, 111, attrs, defAttrs, 110, 123);
|
||||
|
||||
attrs = {};
|
||||
testTextAttrs(ID, 124, attrs, defAttrs, 123, 131);
|
||||
testTextAttrs(ID, 124, attrs, defAttrs, 123, 130);
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
// area11, "font-weight" tests
|
||||
|
@ -410,7 +410,7 @@
|
|||
testTextAttrs(ID, 51, attrs, defAttrs, 51, 57);
|
||||
|
||||
attrs = { };
|
||||
testTextAttrs(ID, 57, attrs, defAttrs, 57, 97);
|
||||
testTextAttrs(ID, 57, attrs, defAttrs, 57, 96);
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
// test out of range offset
|
||||
|
@ -485,7 +485,7 @@
|
|||
testTextAttrs(ID, 27, attrs, defAttrs, 27, 31);
|
||||
|
||||
attrs = { };
|
||||
testTextAttrs(ID, 31, attrs, defAttrs, 31, 45);
|
||||
testTextAttrs(ID, 31, attrs, defAttrs, 31, 44);
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
// area17, "text-decoration" tests
|
||||
|
@ -527,7 +527,7 @@
|
|||
"text-line-through-style": "wavy",
|
||||
"text-line-through-color": "rgb(0, 0, 0)",
|
||||
};
|
||||
testTextAttrs(ID, 39, attrs, defAttrs, 39, 44);
|
||||
testTextAttrs(ID, 39, attrs, defAttrs, 39, 43);
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
// area18, "auto-generation text" tests
|
||||
|
@ -557,7 +557,7 @@
|
|||
testTextAttrs(ID, 11, attrs, defAttrs, 10, 17);
|
||||
|
||||
attrs = {};
|
||||
testTextAttrs(ID, 18, attrs, defAttrs, 17, 28);
|
||||
testTextAttrs(ID, 18, attrs, defAttrs, 17, 27);
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
// area20, "aOffset as -1 (Mozilla Bug 789621)" test
|
||||
|
|
|
@ -71,7 +71,7 @@
|
|||
turnCaretBrowsing(true);
|
||||
|
||||
// test caret offsets
|
||||
testCaretOffset(document, 16);
|
||||
testCaretOffset(document, 15);
|
||||
testCaretOffset("textbox", -1);
|
||||
testCaretOffset("textarea", -1);
|
||||
testCaretOffset("p", -1);
|
||||
|
|
|
@ -51,7 +51,7 @@
|
|||
|
||||
<div id="container">
|
||||
<div><label for="x"></label></div>
|
||||
<div style="display: table-cell;" id="x">Z<span> </span><span></span></div>
|
||||
<div style="display: table-cell;" id="x">Z<span style='white-space:pre'> </span><span></span></div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -49,14 +49,14 @@
|
|||
},
|
||||
{
|
||||
role: ROLE_TEXT_LEAF,
|
||||
name: "Hello3 "
|
||||
name: "Hello3"
|
||||
},
|
||||
{
|
||||
role: ROLE_PARAGRAPH,
|
||||
children: [
|
||||
{
|
||||
role: ROLE_TEXT_LEAF,
|
||||
name: "Hello4 "
|
||||
name: "Hello4"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
@ -71,7 +71,7 @@
|
|||
children: [
|
||||
{
|
||||
role: ROLE_TEXT_LEAF,
|
||||
name: "helllo "
|
||||
name: "helllo"
|
||||
},
|
||||
{
|
||||
role: ROLE_PARAGRAPH,
|
||||
|
@ -84,7 +84,7 @@
|
|||
},
|
||||
{
|
||||
role: ROLE_TEXT_LEAF,
|
||||
name: "hello "
|
||||
name: "hello"
|
||||
}
|
||||
]
|
||||
};
|
||||
|
|
|
@ -1018,10 +1018,6 @@ AccessibleWrap::accNavigate(
|
|||
if (accessible->IsDefunct())
|
||||
return CO_E_OBJNOTCONNECTED;
|
||||
|
||||
// TODO make this work with proxies.
|
||||
if (IsProxy())
|
||||
return E_NOTIMPL;
|
||||
|
||||
Accessible* navAccessible = nullptr;
|
||||
Maybe<RelationType> xpRelation;
|
||||
|
||||
|
@ -1032,18 +1028,34 @@ AccessibleWrap::accNavigate(
|
|||
|
||||
switch(navDir) {
|
||||
case NAVDIR_FIRSTCHILD:
|
||||
if (!nsAccUtils::MustPrune(accessible))
|
||||
navAccessible = accessible->FirstChild();
|
||||
if (accessible->IsProxy()) {
|
||||
if (!accessible->Proxy()->MustPruneChildren()) {
|
||||
navAccessible = WrapperFor(accessible->Proxy()->FirstChild());
|
||||
}
|
||||
} else {
|
||||
if (!nsAccUtils::MustPrune(accessible))
|
||||
navAccessible = accessible->FirstChild();
|
||||
}
|
||||
break;
|
||||
case NAVDIR_LASTCHILD:
|
||||
if (!nsAccUtils::MustPrune(accessible))
|
||||
navAccessible = accessible->LastChild();
|
||||
if (accessible->IsProxy()) {
|
||||
if (!accessible->Proxy()->MustPruneChildren()) {
|
||||
navAccessible = WrapperFor(accessible->Proxy()->LastChild());
|
||||
}
|
||||
} else {
|
||||
if (!nsAccUtils::MustPrune(accessible))
|
||||
navAccessible = accessible->LastChild();
|
||||
}
|
||||
break;
|
||||
case NAVDIR_NEXT:
|
||||
navAccessible = accessible->NextSibling();
|
||||
navAccessible = accessible->IsProxy()
|
||||
? WrapperFor(accessible->Proxy()->NextSibling())
|
||||
: accessible->NextSibling();
|
||||
break;
|
||||
case NAVDIR_PREVIOUS:
|
||||
navAccessible = accessible->PrevSibling();
|
||||
navAccessible = accessible->IsProxy()
|
||||
? WrapperFor(accessible->Proxy()->PrevSibling())
|
||||
: accessible->PrevSibling();
|
||||
break;
|
||||
case NAVDIR_DOWN:
|
||||
case NAVDIR_LEFT:
|
||||
|
@ -1063,8 +1075,16 @@ AccessibleWrap::accNavigate(
|
|||
pvarEndUpAt->vt = VT_EMPTY;
|
||||
|
||||
if (xpRelation) {
|
||||
Relation rel = RelationByType(*xpRelation);
|
||||
navAccessible = rel.Next();
|
||||
if (accessible->IsProxy()) {
|
||||
nsTArray<ProxyAccessible*> targets =
|
||||
accessible->Proxy()->RelationByType(*xpRelation);
|
||||
if (targets.Length()) {
|
||||
navAccessible = WrapperFor(targets[0]);
|
||||
}
|
||||
} else {
|
||||
Relation rel = RelationByType(*xpRelation);
|
||||
navAccessible = rel.Next();
|
||||
}
|
||||
}
|
||||
|
||||
if (!navAccessible)
|
||||
|
|
|
@ -996,6 +996,7 @@ pref("urlclassifier.downloadAllowTable", "goog-downloadwhite-digest256");
|
|||
|
||||
pref("browser.geolocation.warning.infoURL", "https://www.mozilla.org/%LOCALE%/firefox/geolocation/");
|
||||
pref("browser.push.warning.infoURL", "https://www.mozilla.org/%LOCALE%/firefox/push/");
|
||||
pref("browser.push.warning.migrationURL", "https://support.mozilla.org/1/firefox/%VERSION%/%OS%/%LOCALE%/push#w_upgraded-notifications");
|
||||
|
||||
pref("browser.EULA.version", 3);
|
||||
pref("browser.rights.version", 3);
|
||||
|
|
|
@ -6968,6 +6968,11 @@ var gIdentityHandler = {
|
|||
return this._identityPopupMixedContentLearnMore =
|
||||
document.getElementById("identity-popup-mcb-learn-more");
|
||||
},
|
||||
get _identityPopupInsecureLoginFormsLearnMore () {
|
||||
delete this._identityPopupInsecureLoginFormsLearnMore;
|
||||
return this._identityPopupInsecureLoginFormsLearnMore =
|
||||
document.getElementById("identity-popup-insecure-login-forms-learn-more");
|
||||
},
|
||||
get _identityIconLabel () {
|
||||
delete this._identityIconLabel;
|
||||
return this._identityIconLabel = document.getElementById("identity-icon-label");
|
||||
|
@ -7289,10 +7294,12 @@ var gIdentityHandler = {
|
|||
* applicable
|
||||
*/
|
||||
refreshIdentityPopup() {
|
||||
// Update the "Learn More" hrefs for Mixed Content Blocking.
|
||||
// Update "Learn More" for Mixed Content Blocking and Insecure Login Forms.
|
||||
let baseURL = Services.urlFormatter.formatURLPref("app.support.baseURL");
|
||||
let learnMoreHref = `${baseURL}mixed-content`;
|
||||
this._identityPopupMixedContentLearnMore.setAttribute("href", learnMoreHref);
|
||||
this._identityPopupMixedContentLearnMore
|
||||
.setAttribute("href", baseURL + "mixed-content");
|
||||
this._identityPopupInsecureLoginFormsLearnMore
|
||||
.setAttribute("href", baseURL + "insecure-password");
|
||||
|
||||
// Determine connection security information.
|
||||
let connection = "not-secure";
|
||||
|
|
|
@ -134,7 +134,7 @@ var handleContentContextMenu = function (event) {
|
|||
Cc["@mozilla.org/image/tools;1"].getService(Ci.imgITools)
|
||||
.getImgCacheForDocument(doc);
|
||||
let props =
|
||||
imageCache.findEntryProperties(event.target.currentURI);
|
||||
imageCache.findEntryProperties(event.target.currentURI, doc);
|
||||
try {
|
||||
contentType = props.get("type", Ci.nsISupportsCString).data;
|
||||
} catch(e) {}
|
||||
|
|
|
@ -24,7 +24,7 @@ add_task(function* test_permissionMigration() {
|
|||
let alertWindow = yield alertWindowPromise;
|
||||
|
||||
info("Clicking on notification");
|
||||
let url = Services.urlFormatter.formatURLPref("browser.push.warning.infoURL");
|
||||
let url = Services.urlFormatter.formatURLPref("browser.push.warning.migrationURL");
|
||||
let closePromise = promiseWindowClosed(alertWindow);
|
||||
let tabPromise = BrowserTestUtils.waitForNewTab(gBrowser, url);
|
||||
EventUtils.synthesizeMouseAtCenter(alertWindow.document.getElementById("alertTitleLabel"), {}, alertWindow);
|
||||
|
|
|
@ -6,10 +6,11 @@ function promiseAlertWindow() {
|
|||
alertWindow.addEventListener("load", function onLoad() {
|
||||
alertWindow.removeEventListener("load", onLoad);
|
||||
let windowType = alertWindow.document.documentElement.getAttribute("windowtype");
|
||||
if (windowType == "alert:alert") {
|
||||
Services.wm.removeListener(listener);
|
||||
resolve(alertWindow);
|
||||
if (windowType != "alert:alert") {
|
||||
return;
|
||||
}
|
||||
Services.wm.removeListener(listener);
|
||||
resolve(alertWindow);
|
||||
});
|
||||
},
|
||||
};
|
||||
|
@ -17,8 +18,10 @@ function promiseAlertWindow() {
|
|||
});
|
||||
}
|
||||
|
||||
// `promiseWindowClosed` is similar to `BrowserTestUtils.closeWindow`, but
|
||||
// doesn't call `window.close()`.
|
||||
/**
|
||||
* Similar to `BrowserTestUtils.closeWindow`, but
|
||||
* doesn't call `window.close()`.
|
||||
*/
|
||||
function promiseWindowClosed(window) {
|
||||
return new Promise(function(resolve) {
|
||||
Services.ww.registerNotification(function observer(subject, topic, data) {
|
||||
|
|
|
@ -403,6 +403,7 @@ run-if = e10s
|
|||
[browser_star_hsts.js]
|
||||
[browser_subframe_favicons_not_used.js]
|
||||
[browser_syncui.js]
|
||||
skip-if = os == "mac" && debug # Bug 1217332
|
||||
[browser_tabDrop.js]
|
||||
skip-if = buildapp == 'mulet' || e10s
|
||||
[browser_tabReorder.js]
|
||||
|
|
|
@ -55,6 +55,9 @@ add_task(function* test_simple() {
|
|||
is(securityContentBG,
|
||||
"url(\"chrome://browser/skin/controlcenter/mcb-disabled.svg\")",
|
||||
"Using expected icon image in the Control Center subview");
|
||||
is(Array.filter(document.querySelectorAll("[observes=identity-popup-insecure-login-forms-learn-more]"),
|
||||
element => !is_hidden(element)).length, 1,
|
||||
"The 'Learn more' link should be visible once.");
|
||||
}
|
||||
|
||||
// Messages should be visible when the scheme is HTTP, and invisible when
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
[DEFAULT]
|
||||
skip-if = buildapp == 'b2g' || e10s
|
||||
skip-if = buildapp == 'b2g'
|
||||
support-files =
|
||||
audio.ogg
|
||||
bug364677-data.xml
|
||||
|
@ -31,9 +31,10 @@ support-files =
|
|||
[test_contextmenu.html]
|
||||
skip-if = toolkit == "gtk2" || toolkit == "gtk3" || (os == 'mac' && os_version != '10.6') # disabled on Linux due to bug 513558, on Mac after 10.6 due to bug 792304
|
||||
[test_contextmenu_input.html]
|
||||
skip-if = toolkit == "gtk2" || toolkit == "gtk3" # disabled on Linux due to bug 513558
|
||||
skip-if = toolkit == "gtk2" || toolkit == "gtk3" || e10s # disabled on Linux due to bug 513558
|
||||
[test_feed_discovery.html]
|
||||
skip-if = e10s
|
||||
[test_offlineNotification.html]
|
||||
skip-if = buildapp == 'mulet' # Bug 1066070 - I don't think either popup notifications nor addon install stuff works?
|
||||
skip-if = buildapp == 'mulet' || e10s # Bug 1066070 - I don't think either popup notifications nor addon install stuff works?
|
||||
[test_offline_gzip.html]
|
||||
skip-if = buildapp == 'mulet' # Bug 1066070 - I don't think either popup notifications nor addon install stuff works?
|
||||
skip-if = buildapp == 'mulet' || e10s # Bug 1066070 - I don't think either popup notifications nor addon install stuff works?
|
||||
|
|
|
@ -12,6 +12,7 @@
|
|||
<broadcasterset>
|
||||
<broadcaster id="identity-popup-content-host" class="identity-popup-headline" crop="start"/>
|
||||
<broadcaster id="identity-popup-mcb-learn-more" class="text-link plain" value="&identity.learnMore;"/>
|
||||
<broadcaster id="identity-popup-insecure-login-forms-learn-more" class="text-link plain" value="&identity.learnMore;"/>
|
||||
</broadcasterset>
|
||||
|
||||
<panelmultiview id="identity-popup-multiView"
|
||||
|
@ -121,7 +122,7 @@
|
|||
and-when-loginforms="secure">&identity.description.insecure;</description>
|
||||
|
||||
<!-- Insecure login forms -->
|
||||
<description when-loginforms="insecure">&identity.description.insecureLoginForms;</description>
|
||||
<description when-loginforms="insecure">&identity.description.insecureLoginForms; <label observes="identity-popup-insecure-login-forms-learn-more"/></description>
|
||||
|
||||
<!-- Weak Cipher -->
|
||||
<description when-ciphers="weak">&identity.description.weakCipher;</description>
|
||||
|
|
|
@ -10,6 +10,14 @@ body {
|
|||
background: none;
|
||||
}
|
||||
|
||||
/* Beta Ribbon */
|
||||
.beta-ribbon {
|
||||
background: url("../shared/img/beta-ribbon.svg") no-repeat;
|
||||
background-size: 30px;
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
}
|
||||
|
||||
/* Panel styles */
|
||||
|
||||
.panel {
|
||||
|
@ -30,6 +38,13 @@ body {
|
|||
align-items: flex-start;
|
||||
}
|
||||
|
||||
.panel-content > .beta-ribbon {
|
||||
position: fixed;
|
||||
left: 0;
|
||||
top: 0;
|
||||
z-index: 1000;
|
||||
}
|
||||
|
||||
/* Notifications displayed over tabs */
|
||||
|
||||
.panel .messages {
|
||||
|
|
|
@ -806,9 +806,7 @@ loop.panel = (function(_, mozL10n) {
|
|||
},
|
||||
|
||||
handleCreateButtonClick: function() {
|
||||
var createRoomAction = new sharedActions.CreateRoom({
|
||||
nameTemplate: mozL10n.get("rooms_default_room_name_template")
|
||||
});
|
||||
var createRoomAction = new sharedActions.CreateRoom();
|
||||
|
||||
createRoomAction.urls = [{
|
||||
location: this.state.url,
|
||||
|
@ -944,6 +942,7 @@ loop.panel = (function(_, mozL10n) {
|
|||
|
||||
return (
|
||||
React.createElement("div", {className: "panel-content"},
|
||||
React.createElement("div", {className: "beta-ribbon"}),
|
||||
React.createElement(NotificationListView, {
|
||||
clearOnDocumentHidden: true,
|
||||
notifications: this.props.notifications}),
|
||||
|
|
|
@ -806,9 +806,7 @@ loop.panel = (function(_, mozL10n) {
|
|||
},
|
||||
|
||||
handleCreateButtonClick: function() {
|
||||
var createRoomAction = new sharedActions.CreateRoom({
|
||||
nameTemplate: mozL10n.get("rooms_default_room_name_template")
|
||||
});
|
||||
var createRoomAction = new sharedActions.CreateRoom();
|
||||
|
||||
createRoomAction.urls = [{
|
||||
location: this.state.url,
|
||||
|
@ -944,6 +942,7 @@ loop.panel = (function(_, mozL10n) {
|
|||
|
||||
return (
|
||||
<div className="panel-content">
|
||||
<div className="beta-ribbon" />
|
||||
<NotificationListView
|
||||
clearOnDocumentHidden={true}
|
||||
notifications={this.props.notifications} />
|
||||
|
|
|
@ -239,40 +239,6 @@ loop.store = loop.store || {};
|
|||
});
|
||||
},
|
||||
|
||||
/**
|
||||
* Finds the next available room number in the provided room list.
|
||||
*
|
||||
* @param {String} nameTemplate The room name template; should contain a
|
||||
* {{conversationLabel}} placeholder.
|
||||
* @return {Number}
|
||||
*/
|
||||
findNextAvailableRoomNumber: function(nameTemplate) {
|
||||
var searchTemplate = nameTemplate.replace("{{conversationLabel}}", "");
|
||||
var searchRegExp = new RegExp("^" + searchTemplate + "(\\d+)$");
|
||||
|
||||
var roomNumbers = this._storeState.rooms.map(function(room) {
|
||||
var match = searchRegExp.exec(room.decryptedContext.roomName);
|
||||
return match && match[1] ? parseInt(match[1], 10) : 0;
|
||||
});
|
||||
|
||||
if (!roomNumbers.length) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
return Math.max.apply(null, roomNumbers) + 1;
|
||||
},
|
||||
|
||||
/**
|
||||
* Generates a room names against the passed template string.
|
||||
*
|
||||
* @param {String} nameTemplate The room name template.
|
||||
* @return {String}
|
||||
*/
|
||||
_generateNewRoomName: function(nameTemplate) {
|
||||
var roomLabel = this.findNextAvailableRoomNumber(nameTemplate);
|
||||
return nameTemplate.replace("{{conversationLabel}}", roomLabel);
|
||||
},
|
||||
|
||||
/**
|
||||
* Creates a new room.
|
||||
*
|
||||
|
@ -285,9 +251,7 @@ loop.store = loop.store || {};
|
|||
});
|
||||
|
||||
var roomCreationData = {
|
||||
decryptedContext: {
|
||||
roomName: this._generateNewRoomName(actionData.nameTemplate)
|
||||
},
|
||||
decryptedContext: {},
|
||||
maxSize: this.maxRoomCreationSize
|
||||
};
|
||||
|
||||
|
@ -296,7 +260,6 @@ loop.store = loop.store || {};
|
|||
}
|
||||
|
||||
this._notifications.remove("create-room-error");
|
||||
|
||||
this._mozLoop.rooms.create(roomCreationData, function(err, createdRoom) {
|
||||
var buckets = this._mozLoop.ROOM_CREATE;
|
||||
if (err) {
|
||||
|
|
|
@ -241,9 +241,6 @@ loop.shared.actions = (function() {
|
|||
* XXX: should move to some roomActions module - refs bug 1079284
|
||||
*/
|
||||
CreateRoom: Action.define("createRoom", {
|
||||
// The localized template to use to name the new room
|
||||
// (eg. "Conversation {{conversationLabel}}").
|
||||
nameTemplate: String
|
||||
// See https://wiki.mozilla.org/Loop/Architecture/Context#Format_of_context.value
|
||||
// urls: Object - Optional
|
||||
}),
|
||||
|
|
|
@ -1000,7 +1000,6 @@ describe("loop.panel", function() {
|
|||
TestUtils.Simulate.click(node.querySelector(".new-room-button"));
|
||||
|
||||
sinon.assert.calledWith(dispatch, new sharedActions.CreateRoom({
|
||||
nameTemplate: "Fake title",
|
||||
urls: [{
|
||||
location: "http://invalid.com",
|
||||
description: "fakeSite",
|
||||
|
|
|
@ -214,44 +214,7 @@ describe("loop.store.RoomStore", function() {
|
|||
});
|
||||
});
|
||||
|
||||
describe("#findNextAvailableRoomNumber", function() {
|
||||
var fakeNameTemplate = "RoomWord {{conversationLabel}}";
|
||||
|
||||
it("should find next available room number from an empty room list",
|
||||
function() {
|
||||
store.setStoreState({ rooms: [] });
|
||||
|
||||
expect(store.findNextAvailableRoomNumber(fakeNameTemplate)).eql(1);
|
||||
});
|
||||
|
||||
it("should find next available room number from a non empty room list",
|
||||
function() {
|
||||
store.setStoreState({
|
||||
rooms: [{ decryptedContext: { roomName: "RoomWord 1" } }]
|
||||
});
|
||||
|
||||
expect(store.findNextAvailableRoomNumber(fakeNameTemplate)).eql(2);
|
||||
});
|
||||
|
||||
it("should not be sensitive to initial list order", function() {
|
||||
store.setStoreState({
|
||||
rooms: [{
|
||||
decryptedContext: {
|
||||
roomName: "RoomWord 99"
|
||||
}
|
||||
}, {
|
||||
decryptedContext: {
|
||||
roomName: "RoomWord 98"
|
||||
}
|
||||
}]
|
||||
});
|
||||
|
||||
expect(store.findNextAvailableRoomNumber(fakeNameTemplate)).eql(100);
|
||||
});
|
||||
});
|
||||
|
||||
describe("#createRoom", function() {
|
||||
var fakeNameTemplate = "Conversation {{conversationLabel}}";
|
||||
var fakeLocalRoomId = "777";
|
||||
var fakeOwner = "fake@invalid";
|
||||
var fakeRoomCreationData;
|
||||
|
@ -259,9 +222,7 @@ describe("loop.store.RoomStore", function() {
|
|||
beforeEach(function() {
|
||||
sandbox.stub(dispatcher, "dispatch");
|
||||
store.setStoreState({ pendingCreation: false, rooms: [] });
|
||||
fakeRoomCreationData = {
|
||||
nameTemplate: fakeNameTemplate
|
||||
};
|
||||
fakeRoomCreationData = {};
|
||||
});
|
||||
|
||||
it("should clear any existing room errors", function() {
|
||||
|
@ -298,9 +259,7 @@ describe("loop.store.RoomStore", function() {
|
|||
store.createRoom(new sharedActions.CreateRoom(fakeRoomCreationData));
|
||||
|
||||
sinon.assert.calledWith(fakeMozLoop.rooms.create, {
|
||||
decryptedContext: {
|
||||
roomName: "Conversation 1"
|
||||
},
|
||||
decryptedContext: { },
|
||||
maxSize: store.maxRoomCreationSize
|
||||
});
|
||||
});
|
||||
|
@ -318,7 +277,6 @@ describe("loop.store.RoomStore", function() {
|
|||
|
||||
sinon.assert.calledWith(fakeMozLoop.rooms.create, {
|
||||
decryptedContext: {
|
||||
roomName: "Conversation 1",
|
||||
urls: [{
|
||||
location: "http://invalid.com",
|
||||
description: "fakeSite",
|
||||
|
|
|
@ -2244,7 +2244,7 @@ BrowserGlue.prototype = {
|
|||
let imageURL = "chrome://browser/skin/web-notifications-icon.svg";
|
||||
let title = gBrowserBundle.GetStringFromName("webNotifications.upgradeTitle");
|
||||
let text = gBrowserBundle.GetStringFromName("webNotifications.upgradeInfo");
|
||||
let url = Services.urlFormatter.formatURLPref("browser.push.warning.infoURL");
|
||||
let url = Services.urlFormatter.formatURLPref("browser.push.warning.migrationURL");
|
||||
|
||||
try {
|
||||
AlertsService.showAlertNotification(imageURL, title, text,
|
||||
|
|
|
@ -127,7 +127,7 @@ var gContentPane = {
|
|||
let bundlePreferences = document.getElementById("bundlePreferences");
|
||||
let params = { permissionType: "desktop-notification" };
|
||||
params.windowTitle = bundlePreferences.getString("notificationspermissionstitle");
|
||||
params.introText = bundlePreferences.getString("notificationspermissionstext3");
|
||||
params.introText = bundlePreferences.getString("notificationspermissionstext4");
|
||||
|
||||
gSubDialog.open("chrome://browser/content/preferences/permissions.xul",
|
||||
"resizable=yes", params);
|
||||
|
|
|
@ -70,7 +70,7 @@
|
|||
<rows>
|
||||
<row id="notificationsPolicyRow" align="center">
|
||||
<hbox align="start">
|
||||
<label id="notificationsPolicy">¬ificationsPolicyDesc2.label;</label>
|
||||
<label id="notificationsPolicy">¬ificationsPolicyDesc3.label;</label>
|
||||
<label id="notificationsPolicyLearnMore"
|
||||
class="text-link"
|
||||
value="¬ificationsPolicyLearnMore.label;"/>
|
||||
|
|
|
@ -382,7 +382,9 @@ webNotifications.alwaysReceive.accesskey=A
|
|||
webNotifications.neverShow=Always Block Notifications
|
||||
webNotifications.neverShow.accesskey=N
|
||||
webNotifications.receiveFromSite=Would you like to receive notifications from this site?
|
||||
# LOCALIZATION NOTE (webNotifications.upgradeTitle): When using native notifications on OS X, the title may be truncated around 32 characters.
|
||||
webNotifications.upgradeTitle=Upgraded notifications
|
||||
# LOCALIZATION NOTE (webNotifications.upgradeInfo): When using native notifications on OS X, the body may be truncated around 100 characters in some views.
|
||||
webNotifications.upgradeInfo=You will receive notifications from sites, even those not open in a tab. Click to learn more.
|
||||
|
||||
# Pointer lock UI
|
||||
|
|
|
@ -179,9 +179,6 @@ feedback_request_button=Leave Feedback
|
|||
help_label=Help
|
||||
tour_label=Tour
|
||||
|
||||
## LOCALIZATION NOTE(rooms_default_room_name_template): {{conversationLabel}}
|
||||
## will be replaced by a number. For example "Conversation 1" or "Conversation 12".
|
||||
rooms_default_room_name_template=Conversation {{conversationLabel}}
|
||||
rooms_leave_button_label=Leave
|
||||
## LOCALIZATION NOTE (rooms_list_recently_browsed): String is in all caps
|
||||
## for emphasis reasons, it is a heading. Proceed as appropriate for locale.
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
|
||||
<!ENTITY notificationsPolicy.label "Notifications">
|
||||
<!ENTITY notificationsPolicyLearnMore.label "Learn more">
|
||||
<!ENTITY notificationsPolicyDesc2.label "Choose which sites are allowed to receive notifications">
|
||||
<!ENTITY notificationsPolicyDesc3.label "Choose which sites are allowed to send you notifications">
|
||||
<!ENTITY notificationsPolicyButton.accesskey "h">
|
||||
<!ENTITY notificationsPolicyButton.label "Choose…">
|
||||
<!ENTITY notificationsDoNotDisturb.label "Do not disturb me">
|
||||
|
|
|
@ -25,7 +25,7 @@ addonspermissionstext=You can specify which websites are allowed to install add-
|
|||
addons_permissions_title=Allowed Sites - Add-ons Installation
|
||||
popuppermissionstext=You can specify which websites are allowed to open pop-up windows. Type the exact address of the site you want to allow and then click Allow.
|
||||
popuppermissionstitle=Allowed Sites - Pop-ups
|
||||
notificationspermissionstext3=Control which websites are always or never allowed to receive notifications. If you remove a site, it will need to request permission again.
|
||||
notificationspermissionstext4=Control which websites are always or never allowed to send you notifications. If you remove a site, it will need to request permission again.
|
||||
notificationspermissionstitle=Notification Permissions
|
||||
invalidURI=Please enter a valid hostname
|
||||
invalidURITitle=Invalid Hostname Entered
|
||||
|
|
|
@ -224,33 +224,7 @@ if test "$GNU_CXX"; then
|
|||
elif test "$ac_cv_cxx0x_headers_bug" = "yes"; then
|
||||
AC_MSG_ERROR([Your toolchain does not support C++0x/C++11 mode properly. Please upgrade your toolchain])
|
||||
fi
|
||||
|
||||
AC_CACHE_CHECK([whether 64-bits std::atomic requires -latomic],
|
||||
ac_cv_needs_atomic,
|
||||
AC_TRY_LINK(
|
||||
[#include <cstdint>
|
||||
#include <atomic>],
|
||||
[ std::atomic<uint64_t> foo; foo = 1; ],
|
||||
ac_cv_needs_atomic=no,
|
||||
_SAVE_LIBS="$LIBS"
|
||||
LIBS="$LIBS -latomic"
|
||||
AC_TRY_LINK(
|
||||
[#include <cstdint>
|
||||
#include <atomic>],
|
||||
[ std::atomic<uint64_t> foo; foo = 1; ],
|
||||
ac_cv_needs_atomic=yes,
|
||||
ac_cv_needs_atomic="do not know; assuming no")
|
||||
LIBS="$_SAVE_LIBS"
|
||||
)
|
||||
)
|
||||
if test "$ac_cv_needs_atomic" = yes; then
|
||||
MOZ_NEEDS_LIBATOMIC=1
|
||||
else
|
||||
MOZ_NEEDS_LIBATOMIC=
|
||||
fi
|
||||
AC_SUBST(MOZ_NEEDS_LIBATOMIC)
|
||||
fi
|
||||
|
||||
if test -n "$CROSS_COMPILE"; then
|
||||
dnl When cross compile, we have no variable telling us what the host compiler is. Figure it out.
|
||||
cat > conftest.C <<EOF
|
||||
|
|
|
@ -35,7 +35,7 @@ BroadcastDomainSetChange(DomainSetType aSetType, DomainSetChangeType aChangeType
|
|||
SerializeURI(aDomain, uri);
|
||||
|
||||
for (uint32_t i = 0; i < parents.Length(); i++) {
|
||||
unused << parents[i]->SendDomainSetChanged(aSetType, aChangeType, uri);
|
||||
Unused << parents[i]->SendDomainSetChanged(aSetType, aChangeType, uri);
|
||||
}
|
||||
return NS_OK;
|
||||
}
|
||||
|
|
|
@ -749,7 +749,7 @@ SendManifestEntry(const ChromeRegistryItem &aItem)
|
|||
return;
|
||||
|
||||
for (uint32_t i = 0; i < parents.Length(); i++) {
|
||||
unused << parents[i]->SendRegisterChromeItem(aItem);
|
||||
Unused << parents[i]->SendRegisterChromeItem(aItem);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -9,6 +9,6 @@ var Cr = Components.results;
|
|||
function registerManifests(manifests)
|
||||
{
|
||||
var reg = Components.manager.QueryInterface(Ci.nsIComponentRegistrar);
|
||||
for each (var manifest in manifests)
|
||||
for (var manifest of manifests)
|
||||
reg.autoRegister(manifest);
|
||||
}
|
||||
|
|
|
@ -24,6 +24,8 @@
|
|||
# python/mozbuild/mozbuild/backend/fastermake.py is the following:
|
||||
# - TOPSRCDIR/TOPOBJDIR, respectively the top source directory and the top
|
||||
# object directory
|
||||
# - BACKEND, the path to the file the backend will always update when running
|
||||
# mach build-backend
|
||||
# - PYTHON, the path to the python executable
|
||||
# - ACDEFINES, which contains a set of -Dvar=name to be used during
|
||||
# preprocessing
|
||||
|
@ -41,9 +43,7 @@ default: $(addprefix install-,$(INSTALL_MANIFESTS))
|
|||
|
||||
# Explicit files to be built for a default build
|
||||
default: $(addprefix $(TOPOBJDIR)/,$(MANIFEST_TARGETS))
|
||||
default: $(TOPOBJDIR)/dist/bin/greprefs.js
|
||||
default: $(TOPOBJDIR)/dist/bin/platform.ini
|
||||
default: $(TOPOBJDIR)/dist/bin/webapprt/webapprt.ini
|
||||
|
||||
# Targets from the recursive make backend to be built for a default build
|
||||
default: $(TOPOBJDIR)/config/makefiles/xpidl/xpidl
|
||||
|
@ -69,12 +69,22 @@ $(TOPOBJDIR)/%: FORCE
|
|||
# fallback
|
||||
$(TOPOBJDIR)/faster/%: ;
|
||||
|
||||
# Files under the python virtualenv, which are dependencies of the BACKEND
|
||||
# file, are not meant to use the fallback either.
|
||||
$(TOPOBJDIR)/_virtualenv/%: ;
|
||||
|
||||
# And files under dist/ are meant to be copied from their first dependency
|
||||
# if there is no other rule.
|
||||
$(TOPOBJDIR)/dist/%:
|
||||
rm -f $@
|
||||
cp $< $@
|
||||
|
||||
# Refresh backend
|
||||
$(BACKEND):
|
||||
cd $(TOPOBJDIR) && $(PYTHON) config.status --backend FasterMake
|
||||
|
||||
$(MAKEFILE_LIST): $(BACKEND)
|
||||
|
||||
# Install files using install manifests
|
||||
#
|
||||
# The list of base directories is given in INSTALL_MANIFESTS. The
|
||||
|
@ -115,9 +125,7 @@ $(addprefix $(TOPOBJDIR)/,$(MANIFEST_TARGETS)): FORCE
|
|||
# that are not supported by data in moz.build.
|
||||
|
||||
# Files to build with the recursive backend and simply copy
|
||||
$(TOPOBJDIR)/dist/bin/greprefs.js: $(TOPOBJDIR)/modules/libpref/greprefs.js
|
||||
$(TOPOBJDIR)/dist/bin/platform.ini: $(TOPOBJDIR)/toolkit/xre/platform.ini
|
||||
$(TOPOBJDIR)/dist/bin/webapprt/webapprt.ini: $(TOPOBJDIR)/webapprt/webapprt.ini
|
||||
|
||||
# The xpidl target in config/makefiles/xpidl requires the install manifest for
|
||||
# dist/idl to have been processed.
|
||||
|
|
|
@ -26,7 +26,7 @@ function LoadModules(modulelist)
|
|||
return;
|
||||
|
||||
let modulenames = modulelist.split(',');
|
||||
for each (let modulename in modulenames) {
|
||||
for (let modulename of modulenames) {
|
||||
let module = { __proto__: this };
|
||||
include(modulename, module);
|
||||
modules.push(module);
|
||||
|
@ -39,7 +39,7 @@ if (treehydra_enabled())
|
|||
|
||||
function process_type(c)
|
||||
{
|
||||
for each (let module in modules)
|
||||
for (let module of modules)
|
||||
if (module.hasOwnProperty('process_type'))
|
||||
module.process_type(c);
|
||||
}
|
||||
|
@ -51,9 +51,11 @@ function hasAttribute(c, attrname)
|
|||
if (c.attributes === undefined)
|
||||
return false;
|
||||
|
||||
for each (attr in c.attributes)
|
||||
for (var key in c.attributes) {
|
||||
attr = c.attributes[key];
|
||||
if (attr.name == 'user' && attr.value[0] == attrname)
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
@ -135,7 +137,7 @@ const forward_functions = [
|
|||
function setup_forwarding(n)
|
||||
{
|
||||
this[n] = function() {
|
||||
for each (let module in modules) {
|
||||
for (let module of modules) {
|
||||
if (module.hasOwnProperty(n)) {
|
||||
module[n].apply(this, arguments);
|
||||
}
|
||||
|
@ -143,5 +145,5 @@ function setup_forwarding(n)
|
|||
}
|
||||
}
|
||||
|
||||
for each (let n in forward_functions)
|
||||
for (let n of forward_functions)
|
||||
setup_forwarding(n);
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
[DEFAULT]
|
||||
skip-if = e10s
|
||||
support-files =
|
||||
debugger-protocol-helper.js
|
||||
redirect.sjs
|
||||
|
|
|
@ -6,9 +6,9 @@ load 430628-1.html
|
|||
load 432114-1.html
|
||||
load 432114-2.html
|
||||
load 436900-1.html
|
||||
asserts(0-3) load 436900-2.html # bug 566159
|
||||
asserts(0-1) load 436900-2.html # bug 566159
|
||||
load 500328-1.html
|
||||
load 514779-1.xhtml
|
||||
load 614499-1.html
|
||||
load 678872-1.html
|
||||
skip-if(Android||B2G||browserIsRemote) pref(dom.disable_open_during_load,false) load 914521.html
|
||||
skip-if(Android||B2G) pref(dom.disable_open_during_load,false) load 914521.html
|
||||
|
|
|
@ -5107,7 +5107,7 @@ nsDocShell::DisplayLoadError(nsresult aError, nsIURI* aURI,
|
|||
// asserts). Satisfy that assertion now since GetDoc will force
|
||||
// creation of one if it hasn't already been created.
|
||||
if (mScriptGlobal) {
|
||||
unused << mScriptGlobal->GetDoc();
|
||||
Unused << mScriptGlobal->GetDoc();
|
||||
}
|
||||
|
||||
// Display a message box
|
||||
|
|
|
@ -933,7 +933,7 @@ Animation::PauseAt(const TimeDuration& aReadyTime)
|
|||
MOZ_ASSERT(mPendingState == PendingState::PausePending,
|
||||
"Expected to pause a pause-pending animation");
|
||||
|
||||
if (!mStartTime.IsNull()) {
|
||||
if (!mStartTime.IsNull() && mHoldTime.IsNull()) {
|
||||
mHoldTime.SetValue((aReadyTime - mStartTime.Value())
|
||||
.MultDouble(mPlaybackRate));
|
||||
}
|
||||
|
|
|
@ -257,6 +257,19 @@ test(function(t) {
|
|||
'infinite-duration animation');
|
||||
}, 'pause() from idle with a negative playbackRate and endless effect');
|
||||
|
||||
promise_test(function(t) {
|
||||
var div = addDiv(t, { style: 'animation: anim 1000s' });
|
||||
return div.getAnimations()[0].ready
|
||||
.then(function(animation) {
|
||||
animation.finish();
|
||||
animation.pause();
|
||||
return animation.ready;
|
||||
}).then(function(animation) {
|
||||
assert_equals(animation.currentTime, 1000 * 1000,
|
||||
'currentTime after pausing finished animation');
|
||||
});
|
||||
}, 'pause() on a finished animation');
|
||||
|
||||
done();
|
||||
</script>
|
||||
</body>
|
||||
|
|
|
@ -96,7 +96,7 @@ if (opener) {
|
|||
"assert_between_inclusive",
|
||||
"assert_true", "assert_false",
|
||||
"assert_class_string", "assert_throws",
|
||||
"assert_unreached", "test"]) {
|
||||
"assert_unreached", "promise_test", "test"]) {
|
||||
window[funcName] = opener[funcName].bind(opener);
|
||||
}
|
||||
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
[DEFAULT]
|
||||
skip-if = e10s
|
||||
support-files =
|
||||
addons/application.zip
|
||||
addons/invalid.webapp
|
||||
|
@ -38,21 +37,21 @@ support-files =
|
|||
icon48.png
|
||||
|
||||
[test_app_addons.html]
|
||||
skip-if = os == "android" || toolkit == "gonk" # embed-apps doesn't work in mochitest app
|
||||
skip-if = os == "android" || toolkit == "gonk" || e10s # embed-apps doesn't work in mochitest app
|
||||
[test_app_blocklist.html]
|
||||
skip-if = buildapp != 'mulet' # we need MOZ_B2G defined and the test to run in the parent process.
|
||||
[test_app_enabled.html]
|
||||
[test_app_update.html]
|
||||
skip-if = os == "android" || toolkit == "gonk" # embed-apps doesn't work in mochitest app
|
||||
skip-if = os == "android" || toolkit == "gonk" || e10s # embed-apps doesn't work in mochitest app
|
||||
[test_bug_795164.html]
|
||||
[test_bug_1168300.html]
|
||||
skip-if = toolkit == "gonk" # see bug 1175784
|
||||
skip-if = toolkit == "gonk" || e10s # see bug 1175784
|
||||
[test_import_export.html]
|
||||
[test_install_dev_mode.html]
|
||||
[test_install_multiple_apps_origin.html]
|
||||
[test_install_receipts.html]
|
||||
[test_langpacks.html]
|
||||
skip-if = os == "android" || toolkit == "gonk" # embed-apps doesn't work in mochitest app
|
||||
skip-if = os == "android" || toolkit == "gonk" || e10s # embed-apps doesn't work in mochitest app
|
||||
[test_marketplace_pkg_install.html]
|
||||
skip-if = buildapp == "b2g" || toolkit == "android" # see bug 989806
|
||||
[test_packaged_app_install.html]
|
||||
|
@ -64,10 +63,10 @@ skip-if = (toolkit == 'android' && processor == 'x86') #x86 only
|
|||
[test_uninstall_errors.html]
|
||||
[test_theme_role.html]
|
||||
[test_third_party_homescreen.html]
|
||||
skip-if = os == "android" || toolkit == "gonk" # embed-apps doesn't work in mochitest app
|
||||
skip-if = os == "android" || toolkit == "gonk" || e10s # embed-apps doesn't work in mochitest app
|
||||
[test_web_app_install.html]
|
||||
[test_widget.html]
|
||||
skip-if = os == "android" || toolkit == "gonk" # embed-apps doesn't work in mochitest app
|
||||
skip-if = os == "android" || toolkit == "gonk" || e10s # embed-apps doesn't work in mochitest app
|
||||
[test_widget_browser.html]
|
||||
skip-if = os == "android" || toolkit == "gonk" # embed-apps doesn't work in mochitest app
|
||||
skip-if = os == "android" || toolkit == "gonk" || e10s # embed-apps doesn't work in mochitest app
|
||||
[test_checkInstalled.html]
|
||||
|
|
|
@ -56,7 +56,7 @@ using mozilla::ipc::BackgroundChild;
|
|||
using mozilla::ipc::IsOnBackgroundThread;
|
||||
using mozilla::ipc::PBackgroundChild;
|
||||
using mozilla::ipc::PrincipalInfo;
|
||||
using mozilla::unused;
|
||||
using mozilla::Unused;
|
||||
using mozilla::HashString;
|
||||
|
||||
namespace mozilla {
|
||||
|
@ -478,7 +478,7 @@ private:
|
|||
FinishOnOwningThread();
|
||||
|
||||
if (!mActorDestroyed) {
|
||||
unused << Send__delete__(this, mResult);
|
||||
Unused << Send__delete__(this, mResult);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -993,7 +993,7 @@ ParentRunnable::Run()
|
|||
|
||||
// Metadata is now open.
|
||||
if (!SendOnOpenMetadataForRead(mMetadata)) {
|
||||
unused << Send__delete__(this, JS::AsmJSCache_InternalError);
|
||||
Unused << Send__delete__(this, JS::AsmJSCache_InternalError);
|
||||
}
|
||||
|
||||
return NS_OK;
|
||||
|
@ -1035,7 +1035,7 @@ ParentRunnable::Run()
|
|||
FileDescriptor::PlatformHandleType handle =
|
||||
FileDescriptor::PlatformHandleType(PR_FileDesc2NativeHandle(mFileDesc));
|
||||
if (!SendOnOpenCacheFile(mFileSize, FileDescriptor(handle))) {
|
||||
unused << Send__delete__(this, JS::AsmJSCache_InternalError);
|
||||
Unused << Send__delete__(this, JS::AsmJSCache_InternalError);
|
||||
}
|
||||
|
||||
return NS_OK;
|
||||
|
@ -1451,7 +1451,7 @@ ChildRunnable::Run()
|
|||
Release();
|
||||
|
||||
if (!mActorDestroyed) {
|
||||
unused << Send__delete__(this, JS::AsmJSCache_Success);
|
||||
Unused << Send__delete__(this, JS::AsmJSCache_Success);
|
||||
}
|
||||
|
||||
mState = eFinished;
|
||||
|
|
|
@ -1159,7 +1159,7 @@ void
|
|||
FragmentOrElement::GetTextContentInternal(nsAString& aTextContent,
|
||||
ErrorResult& aError)
|
||||
{
|
||||
if(!nsContentUtils::GetNodeTextContent(this, true, aTextContent, fallible)) {
|
||||
if (!nsContentUtils::GetNodeTextContent(this, true, aTextContent, fallible)) {
|
||||
aError.Throw(NS_ERROR_OUT_OF_MEMORY);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -210,7 +210,7 @@ public:
|
|||
rv = NS_DispatchToMainThread(mEncodingCompleteEvent);
|
||||
if (NS_FAILED(rv)) {
|
||||
// Better to leak than to crash.
|
||||
unused << mEncodingCompleteEvent.forget();
|
||||
Unused << mEncodingCompleteEvent.forget();
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
load 43040-1.html
|
||||
load 90613-1.html
|
||||
load 116848-1.html
|
||||
load 149320-1.html
|
||||
|
@ -66,7 +67,6 @@ load 418928-1.html
|
|||
load 420620-1.html
|
||||
load 424276-1.html
|
||||
load 426987-1.html
|
||||
load 43040-1.html
|
||||
load 439206-1.html
|
||||
load 443538-1.svg
|
||||
load 448615-1.html
|
||||
|
@ -146,8 +146,8 @@ load 706283-1.html
|
|||
load 708405-1.html
|
||||
load 709384.html
|
||||
load 709954.html
|
||||
load 713417-1.html
|
||||
load 713417-2.html
|
||||
load 713417.html
|
||||
load 715056.html
|
||||
load 729431-1.xhtml
|
||||
load 741163-1.html
|
||||
|
@ -184,7 +184,7 @@ load 847127.html
|
|||
load 849601.html
|
||||
load 849727.html
|
||||
load 849732.html
|
||||
skip-if(Android) load 851353-1.html
|
||||
load 851353-1.html
|
||||
load 852381.html
|
||||
load 863950.html
|
||||
load 864448.html
|
||||
|
@ -194,14 +194,14 @@ load 930250.html
|
|||
load 942979.html
|
||||
load 973401.html
|
||||
load 978646.html
|
||||
pref(dom.webcomponents.enabled,true) load 1027461-1.html
|
||||
pref(dom.webcomponents.enabled,true) load 1024428-1.html
|
||||
load 1026714.html
|
||||
pref(dom.webcomponents.enabled,true) load 1027461-1.html
|
||||
pref(dom.webcomponents.enabled,true) load 1029710.html
|
||||
HTTP(..) load xhr_abortinprogress.html
|
||||
load xhr_empty_datauri.html
|
||||
load xhr_html_nullresponse.html
|
||||
load structured_clone_container_throws.html
|
||||
load 1154598.xhtml
|
||||
load 1157995.html
|
||||
load 1181619.html
|
||||
load structured_clone_container_throws.html
|
||||
HTTP(..) load xhr_abortinprogress.html
|
||||
load xhr_empty_datauri.html
|
||||
load xhr_html_nullresponse.html
|
||||
|
|
|
@ -33,7 +33,7 @@
|
|||
#include "nsIDOMEvent.h"
|
||||
#include "nsWeakPtr.h"
|
||||
|
||||
using mozilla::unused; // <snicker>
|
||||
using mozilla::Unused; // <snicker>
|
||||
using namespace mozilla::dom;
|
||||
using namespace mozilla;
|
||||
|
||||
|
@ -473,7 +473,7 @@ nsContentPermissionRequestProxy::nsContentPermissionRequesterProxy
|
|||
|
||||
mGetCallback = aCallback;
|
||||
mWaitGettingResult = true;
|
||||
unused << mParent->SendGetVisibility();
|
||||
Unused << mParent->SendGetVisibility();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -608,7 +608,7 @@ nsContentPermissionRequestProxy::Cancel()
|
|||
|
||||
nsTArray<PermissionChoice> emptyChoices;
|
||||
|
||||
unused << ContentPermissionRequestParent::Send__delete__(mParent, false, emptyChoices);
|
||||
Unused << ContentPermissionRequestParent::Send__delete__(mParent, false, emptyChoices);
|
||||
mParent = nullptr;
|
||||
return NS_OK;
|
||||
}
|
||||
|
@ -672,7 +672,7 @@ nsContentPermissionRequestProxy::Allow(JS::HandleValue aChoices)
|
|||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
unused << ContentPermissionRequestParent::Send__delete__(mParent, true, choices);
|
||||
Unused << ContentPermissionRequestParent::Send__delete__(mParent, true, choices);
|
||||
mParent = nullptr;
|
||||
return NS_OK;
|
||||
}
|
||||
|
@ -776,7 +776,7 @@ RemotePermissionRequest::RecvGetVisibility()
|
|||
|
||||
bool isActive = false;
|
||||
docshell->GetIsActive(&isActive);
|
||||
unused << SendNotifyVisibility(isActive);
|
||||
Unused << SendNotifyVisibility(isActive);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -787,6 +787,6 @@ RemotePermissionRequest::NotifyVisibility(bool isVisible)
|
|||
return NS_OK;
|
||||
}
|
||||
|
||||
unused << SendNotifyVisibility(isVisible);
|
||||
Unused << SendNotifyVisibility(isVisible);
|
||||
return NS_OK;
|
||||
}
|
||||
|
|
|
@ -3128,7 +3128,8 @@ nsContentUtils::IsImageInCache(nsIURI* aURI, nsIDocument* aDocument)
|
|||
// If something unexpected happened we return false, otherwise if props
|
||||
// is set, the image is cached and we return true
|
||||
nsCOMPtr<nsIProperties> props;
|
||||
nsresult rv = cache->FindEntryProperties(aURI, getter_AddRefs(props));
|
||||
nsCOMPtr<nsIDOMDocument> domDoc = do_QueryInterface(aDocument);
|
||||
nsresult rv = cache->FindEntryProperties(aURI, domDoc, getter_AddRefs(props));
|
||||
return (NS_SUCCEEDED(rv) && props);
|
||||
}
|
||||
|
||||
|
|
|
@ -572,7 +572,7 @@ nsDOMMutationObserver::GetAllSubtreeObserversFor(nsINode* aNode,
|
|||
void
|
||||
nsDOMMutationObserver::ScheduleForRun()
|
||||
{
|
||||
nsDOMMutationObserver::AddCurrentlyHandlingObserver(this);
|
||||
nsDOMMutationObserver::AddCurrentlyHandlingObserver(this, sMutationLevel);
|
||||
|
||||
if (mWaitingForRun) {
|
||||
return;
|
||||
|
@ -928,6 +928,15 @@ nsDOMMutationObserver::CurrentRecord(nsIAtom* aType)
|
|||
ScheduleForRun();
|
||||
}
|
||||
|
||||
#ifdef DEBUG
|
||||
MOZ_ASSERT(sCurrentlyHandlingObservers->Length() == sMutationLevel);
|
||||
for (size_t i = 0; i < sCurrentlyHandlingObservers->Length(); ++i) {
|
||||
MOZ_ASSERT(sCurrentlyHandlingObservers->ElementAt(i).Contains(this),
|
||||
"MutationObserver should be added as an observer of all the "
|
||||
"nested mutations!");
|
||||
}
|
||||
#endif
|
||||
|
||||
NS_ASSERTION(mCurrentMutations[last]->mType == aType,
|
||||
"Unexpected MutationRecord type!");
|
||||
|
||||
|
@ -972,23 +981,30 @@ nsDOMMutationObserver::LeaveMutationHandling()
|
|||
}
|
||||
|
||||
void
|
||||
nsDOMMutationObserver::AddCurrentlyHandlingObserver(nsDOMMutationObserver* aObserver)
|
||||
nsDOMMutationObserver::AddCurrentlyHandlingObserver(nsDOMMutationObserver* aObserver,
|
||||
uint32_t aMutationLevel)
|
||||
{
|
||||
NS_ASSERTION(sMutationLevel > 0, "Unexpected mutation level!");
|
||||
NS_ASSERTION(aMutationLevel > 0, "Unexpected mutation level!");
|
||||
|
||||
if (aMutationLevel > 1) {
|
||||
// MutationObserver must be in the currently handling observer list
|
||||
// in all the nested levels.
|
||||
AddCurrentlyHandlingObserver(aObserver, aMutationLevel - 1);
|
||||
}
|
||||
|
||||
if (!sCurrentlyHandlingObservers) {
|
||||
sCurrentlyHandlingObservers =
|
||||
new nsAutoTArray<nsAutoTArray<RefPtr<nsDOMMutationObserver>, 4>, 4>;
|
||||
}
|
||||
|
||||
while (sCurrentlyHandlingObservers->Length() < sMutationLevel) {
|
||||
while (sCurrentlyHandlingObservers->Length() < aMutationLevel) {
|
||||
sCurrentlyHandlingObservers->InsertElementAt(
|
||||
sCurrentlyHandlingObservers->Length());
|
||||
}
|
||||
|
||||
uint32_t last = sMutationLevel - 1;
|
||||
if (!sCurrentlyHandlingObservers->ElementAt(last).Contains(aObserver)) {
|
||||
sCurrentlyHandlingObservers->ElementAt(last).AppendElement(aObserver);
|
||||
uint32_t index = aMutationLevel - 1;
|
||||
if (!sCurrentlyHandlingObservers->ElementAt(index).Contains(aObserver)) {
|
||||
sCurrentlyHandlingObservers->ElementAt(index).AppendElement(aObserver);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -596,7 +596,8 @@ protected:
|
|||
|
||||
static void HandleMutationsInternal();
|
||||
|
||||
static void AddCurrentlyHandlingObserver(nsDOMMutationObserver* aObserver);
|
||||
static void AddCurrentlyHandlingObserver(nsDOMMutationObserver* aObserver,
|
||||
uint32_t aMutationLevel);
|
||||
|
||||
nsCOMPtr<nsPIDOMWindow> mOwner;
|
||||
|
||||
|
|
|
@ -70,7 +70,8 @@
|
|||
#include "mozilla/dom/TreeWalker.h"
|
||||
|
||||
#include "nsIServiceManager.h"
|
||||
#include "nsIServiceWorkerManager.h"
|
||||
#include "mozilla/dom/workers/ServiceWorkerManager.h"
|
||||
#include "imgLoader.h"
|
||||
|
||||
#include "nsCanvasFrame.h"
|
||||
#include "nsContentCID.h"
|
||||
|
@ -8893,8 +8894,13 @@ nsDocument::Destroy()
|
|||
|
||||
mRegistry = nullptr;
|
||||
|
||||
nsCOMPtr<nsIServiceWorkerManager> swm = mozilla::services::GetServiceWorkerManager();
|
||||
using mozilla::dom::workers::ServiceWorkerManager;
|
||||
RefPtr<ServiceWorkerManager> swm = ServiceWorkerManager::GetInstance();
|
||||
if (swm) {
|
||||
ErrorResult error;
|
||||
if (swm->IsControlled(this, error)) {
|
||||
nsContentUtils::GetImgLoaderForDocument(this)->ClearCacheForControlledDocument(this);
|
||||
}
|
||||
swm->MaybeStopControlling(this);
|
||||
}
|
||||
|
||||
|
|
|
@ -1123,7 +1123,7 @@ void
|
|||
ActivateOrDeactivateChild(TabParent* aParent, void* aArg)
|
||||
{
|
||||
bool active = static_cast<bool>(aArg);
|
||||
unused << aParent->SendParentActivated(active);
|
||||
Unused << aParent->SendParentActivated(active);
|
||||
}
|
||||
|
||||
void
|
||||
|
|
|
@ -990,8 +990,8 @@ nsFrameLoader::SwapWithOtherRemoteLoader(nsFrameLoader* aOther,
|
|||
|
||||
mInSwap = aOther->mInSwap = false;
|
||||
|
||||
unused << mRemoteBrowser->SendSwappedWithOtherRemoteLoader();
|
||||
unused << aOther->mRemoteBrowser->SendSwappedWithOtherRemoteLoader();
|
||||
Unused << mRemoteBrowser->SendSwappedWithOtherRemoteLoader();
|
||||
Unused << aOther->mRemoteBrowser->SendSwappedWithOtherRemoteLoader();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -2296,7 +2296,7 @@ nsFrameLoader::TryRemoteBrowser()
|
|||
nsGkAtoms::mozpasspointerevents,
|
||||
nsGkAtoms::_true,
|
||||
eCaseMatters)) {
|
||||
unused << mRemoteBrowser->SendSetUpdateHitRegion(true);
|
||||
Unused << mRemoteBrowser->SendSetUpdateHitRegion(true);
|
||||
}
|
||||
|
||||
ReallyLoadFrameScripts();
|
||||
|
@ -2341,14 +2341,14 @@ nsFrameLoader::DeactivateRemoteFrame() {
|
|||
void
|
||||
nsFrameLoader::ActivateUpdateHitRegion() {
|
||||
if (mRemoteBrowser) {
|
||||
unused << mRemoteBrowser->SendSetUpdateHitRegion(true);
|
||||
Unused << mRemoteBrowser->SendSetUpdateHitRegion(true);
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
nsFrameLoader::DeactivateUpdateHitRegion() {
|
||||
if (mRemoteBrowser) {
|
||||
unused << mRemoteBrowser->SendSetUpdateHitRegion(false);
|
||||
Unused << mRemoteBrowser->SendSetUpdateHitRegion(false);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2857,7 +2857,7 @@ nsFrameLoader::RequestNotifyAfterRemotePaint()
|
|||
{
|
||||
// If remote browsing (e10s), handle this with the TabParent.
|
||||
if (mRemoteBrowser) {
|
||||
unused << mRemoteBrowser->SendRequestNotifyAfterRemotePaint();
|
||||
Unused << mRemoteBrowser->SendRequestNotifyAfterRemotePaint();
|
||||
}
|
||||
|
||||
return NS_OK;
|
||||
|
|
|
@ -11623,7 +11623,7 @@ nsGlobalWindow::SetTimeoutOrInterval(nsIScriptTimeoutHandler *aHandler,
|
|||
}
|
||||
|
||||
// The timeout is now also held in the timer's closure.
|
||||
unused << copy.forget();
|
||||
Unused << copy.forget();
|
||||
} else {
|
||||
// If we are frozen, however, then we instead simply set
|
||||
// timeout->mTimeRemaining to be the "time remaining" in the timeout (i.e.,
|
||||
|
@ -12029,7 +12029,7 @@ nsGlobalWindow::RunTimeout(nsTimeout *aTimeout)
|
|||
// through a timeout that fired while a modal (to this window)
|
||||
// dialog was open or through other non-obvious paths.
|
||||
MOZ_ASSERT(dummy_timeout->HasRefCntOne(), "dummy_timeout may leak");
|
||||
unused << timeoutExtraRef.forget().take();
|
||||
Unused << timeoutExtraRef.forget().take();
|
||||
|
||||
mTimeoutInsertionPoint = last_insertion_point;
|
||||
|
||||
|
|
|
@ -35,6 +35,9 @@
|
|||
#include "mozilla/Telemetry.h"
|
||||
#include "mozilla/Likely.h"
|
||||
#include "nsCSSFrameConstructor.h"
|
||||
#include "nsStyleStruct.h"
|
||||
#include "nsStyleStructInlines.h"
|
||||
#include "nsComputedDOMStyle.h"
|
||||
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
|
@ -3193,3 +3196,245 @@ nsRange::ExcludeNonSelectableNodes(nsTArray<RefPtr<nsRange>>* aOutRanges)
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
struct InnerTextAccumulator
|
||||
{
|
||||
explicit InnerTextAccumulator(mozilla::dom::DOMString& aValue)
|
||||
: mString(aValue.AsAString()), mRequiredLineBreakCount(0) {}
|
||||
void FlushLineBreaks()
|
||||
{
|
||||
while (mRequiredLineBreakCount > 0) {
|
||||
// Required line breaks at the start of the text are suppressed.
|
||||
if (!mString.IsEmpty()) {
|
||||
mString.Append('\n');
|
||||
}
|
||||
--mRequiredLineBreakCount;
|
||||
}
|
||||
}
|
||||
void Append(char aCh)
|
||||
{
|
||||
Append(nsAutoString(aCh));
|
||||
}
|
||||
void Append(const nsAString& aString)
|
||||
{
|
||||
if (aString.IsEmpty()) {
|
||||
return;
|
||||
}
|
||||
FlushLineBreaks();
|
||||
mString.Append(aString);
|
||||
}
|
||||
void AddRequiredLineBreakCount(int8_t aCount)
|
||||
{
|
||||
mRequiredLineBreakCount = std::max(mRequiredLineBreakCount, aCount);
|
||||
}
|
||||
|
||||
nsAString& mString;
|
||||
int8_t mRequiredLineBreakCount;
|
||||
};
|
||||
|
||||
static bool
|
||||
IsVisibleAndNotInReplacedElement(nsIFrame* aFrame)
|
||||
{
|
||||
if (!aFrame || !aFrame->StyleVisibility()->IsVisible()) {
|
||||
return false;
|
||||
}
|
||||
for (nsIFrame* f = aFrame->GetParent(); f; f = f->GetParent()) {
|
||||
if (f->IsFrameOfType(nsIFrame::eReplaced) &&
|
||||
!f->GetContent()->IsHTMLElement(nsGkAtoms::button)) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
static bool
|
||||
ElementIsVisible(Element* aElement)
|
||||
{
|
||||
if (!aElement) {
|
||||
return false;
|
||||
}
|
||||
RefPtr<nsStyleContext> sc = nsComputedDOMStyle::GetStyleContextForElement(
|
||||
aElement, nullptr, nullptr);
|
||||
return sc && sc->StyleVisibility()->IsVisible();
|
||||
}
|
||||
|
||||
static void
|
||||
AppendTransformedText(InnerTextAccumulator& aResult,
|
||||
nsGenericDOMDataNode* aTextNode,
|
||||
int32_t aStart, int32_t aEnd)
|
||||
{
|
||||
nsIFrame* frame = aTextNode->GetPrimaryFrame();
|
||||
if (!IsVisibleAndNotInReplacedElement(frame)) {
|
||||
return;
|
||||
}
|
||||
nsIFrame::RenderedText text = frame->GetRenderedText(aStart, aEnd);
|
||||
aResult.Append(text.mString);
|
||||
}
|
||||
|
||||
/**
|
||||
* States for tree traversal. AT_NODE means that we are about to enter
|
||||
* the current DOM node. AFTER_NODE means that we have just finished traversing
|
||||
* the children of the current DOM node and are about to apply any
|
||||
* "after processing the node's children" steps before we finish visiting
|
||||
* the node.
|
||||
*/
|
||||
enum TreeTraversalState {
|
||||
AT_NODE,
|
||||
AFTER_NODE
|
||||
};
|
||||
|
||||
static int8_t
|
||||
GetRequiredInnerTextLineBreakCount(nsIFrame* aFrame)
|
||||
{
|
||||
if (aFrame->GetContent()->IsHTMLElement(nsGkAtoms::p)) {
|
||||
return 2;
|
||||
}
|
||||
const nsStyleDisplay* styleDisplay = aFrame->StyleDisplay();
|
||||
if (styleDisplay->IsBlockOutside(aFrame) ||
|
||||
styleDisplay->mDisplay == NS_STYLE_DISPLAY_TABLE_CAPTION) {
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
static bool
|
||||
IsLastCellOfRow(nsIFrame* aFrame)
|
||||
{
|
||||
nsIAtom* type = aFrame->GetType();
|
||||
if (type != nsGkAtoms::tableCellFrame &&
|
||||
type != nsGkAtoms::bcTableCellFrame) {
|
||||
return true;
|
||||
}
|
||||
for (nsIFrame* c = aFrame; c; c = c->GetNextContinuation()) {
|
||||
if (c->GetNextSibling()) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
static bool
|
||||
IsLastRowOfRowGroup(nsIFrame* aFrame)
|
||||
{
|
||||
if (aFrame->GetType() != nsGkAtoms::tableRowFrame) {
|
||||
return true;
|
||||
}
|
||||
for (nsIFrame* c = aFrame; c; c = c->GetNextContinuation()) {
|
||||
if (c->GetNextSibling()) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
static bool
|
||||
IsLastNonemptyRowGroupOfTable(nsIFrame* aFrame)
|
||||
{
|
||||
if (aFrame->GetType() != nsGkAtoms::tableRowGroupFrame) {
|
||||
return true;
|
||||
}
|
||||
for (nsIFrame* c = aFrame; c; c = c->GetNextContinuation()) {
|
||||
for (nsIFrame* next = c->GetNextSibling(); next; next = next->GetNextSibling()) {
|
||||
if (next->GetFirstPrincipalChild()) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
void
|
||||
nsRange::GetInnerTextNoFlush(DOMString& aValue, ErrorResult& aError,
|
||||
nsIContent* aStartParent, uint32_t aStartOffset,
|
||||
nsIContent* aEndParent, uint32_t aEndOffset)
|
||||
{
|
||||
InnerTextAccumulator result(aValue);
|
||||
nsIContent* currentNode = aStartParent;
|
||||
TreeTraversalState currentState = AFTER_NODE;
|
||||
if (aStartParent->IsNodeOfType(nsINode::eTEXT)) {
|
||||
auto t = static_cast<nsGenericDOMDataNode*>(aStartParent);
|
||||
if (aStartParent == aEndParent) {
|
||||
AppendTransformedText(result, t, aStartOffset, aEndOffset);
|
||||
return;
|
||||
}
|
||||
AppendTransformedText(result, t, aStartOffset, t->TextLength());
|
||||
} else {
|
||||
if (uint32_t(aStartOffset) < aStartParent->GetChildCount()) {
|
||||
currentNode = aStartParent->GetChildAt(aStartOffset);
|
||||
currentState = AT_NODE;
|
||||
}
|
||||
}
|
||||
|
||||
nsIContent* endNode = aEndParent;
|
||||
TreeTraversalState endState = AFTER_NODE;
|
||||
if (aEndParent->IsNodeOfType(nsINode::eTEXT)) {
|
||||
endState = AT_NODE;
|
||||
} else {
|
||||
if (uint32_t(aEndOffset) < aEndParent->GetChildCount()) {
|
||||
endNode = aEndParent->GetChildAt(aEndOffset);
|
||||
endState = AT_NODE;
|
||||
}
|
||||
}
|
||||
|
||||
while (currentNode != endNode || currentState != endState) {
|
||||
nsIFrame* f = currentNode->GetPrimaryFrame();
|
||||
bool isVisibleAndNotReplaced = IsVisibleAndNotInReplacedElement(f);
|
||||
if (currentState == AT_NODE) {
|
||||
bool isText = currentNode->IsNodeOfType(nsINode::eTEXT);
|
||||
if (isText && currentNode->GetParent()->IsHTMLElement(nsGkAtoms::rp) &&
|
||||
ElementIsVisible(currentNode->GetParent()->AsElement())) {
|
||||
nsAutoString str;
|
||||
currentNode->GetTextContent(str, aError);
|
||||
result.Append(str);
|
||||
} else if (isVisibleAndNotReplaced) {
|
||||
result.AddRequiredLineBreakCount(GetRequiredInnerTextLineBreakCount(f));
|
||||
if (isText) {
|
||||
nsIFrame::RenderedText text = f->GetRenderedText();
|
||||
result.Append(text.mString);
|
||||
}
|
||||
}
|
||||
nsIContent* child = currentNode->GetFirstChild();
|
||||
if (child) {
|
||||
currentNode = child;
|
||||
continue;
|
||||
}
|
||||
currentState = AFTER_NODE;
|
||||
}
|
||||
if (currentNode == endNode && currentState == endState) {
|
||||
break;
|
||||
}
|
||||
if (isVisibleAndNotReplaced) {
|
||||
if (currentNode->IsHTMLElement(nsGkAtoms::br)) {
|
||||
result.Append('\n');
|
||||
}
|
||||
switch (f->StyleDisplay()->mDisplay) {
|
||||
case NS_STYLE_DISPLAY_TABLE_CELL:
|
||||
if (!IsLastCellOfRow(f)) {
|
||||
result.Append('\t');
|
||||
}
|
||||
break;
|
||||
case NS_STYLE_DISPLAY_TABLE_ROW:
|
||||
if (!IsLastRowOfRowGroup(f) ||
|
||||
!IsLastNonemptyRowGroupOfTable(f->GetParent())) {
|
||||
result.Append('\n');
|
||||
}
|
||||
break;
|
||||
}
|
||||
result.AddRequiredLineBreakCount(GetRequiredInnerTextLineBreakCount(f));
|
||||
}
|
||||
nsIContent* next = currentNode->GetNextSibling();
|
||||
if (next) {
|
||||
currentNode = next;
|
||||
currentState = AT_NODE;
|
||||
} else {
|
||||
currentNode = currentNode->GetParent();
|
||||
}
|
||||
}
|
||||
|
||||
if (aEndParent->IsNodeOfType(nsINode::eTEXT)) {
|
||||
nsGenericDOMDataNode* t = static_cast<nsGenericDOMDataNode*>(aEndParent);
|
||||
AppendTransformedText(result, t, 0, aEndOffset);
|
||||
}
|
||||
// Do not flush trailing line breaks! Required breaks at the end of the text
|
||||
// are suppressed.
|
||||
}
|
||||
|
|
|
@ -212,6 +212,12 @@ public:
|
|||
bool aFlushLayout = true);
|
||||
already_AddRefed<DOMRectList> GetClientRects(bool aClampToEdge = true,
|
||||
bool aFlushLayout = true);
|
||||
static void GetInnerTextNoFlush(mozilla::dom::DOMString& aValue,
|
||||
mozilla::ErrorResult& aError,
|
||||
nsIContent* aStartParent,
|
||||
uint32_t aStartOffset,
|
||||
nsIContent* aEndParent,
|
||||
uint32_t aEndOffset);
|
||||
|
||||
nsINode* GetParentObject() const { return mOwner; }
|
||||
virtual JSObject* WrapObject(JSContext* cx, JS::Handle<JSObject*> aGivenProto) override final;
|
||||
|
|
|
@ -819,8 +819,8 @@ NotifyOffThreadScriptLoadCompletedRunnable::~NotifyOffThreadScriptLoadCompletedR
|
|||
} else {
|
||||
MOZ_ASSERT(false, "We really shouldn't leak!");
|
||||
// Better to leak than crash.
|
||||
unused << mRequest.forget();
|
||||
unused << mLoader.forget();
|
||||
Unused << mRequest.forget();
|
||||
Unused << mLoader.forget();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -890,7 +890,7 @@ nsScriptLoader::AttemptAsyncScriptCompile(nsScriptLoadRequest* aRequest)
|
|||
mDocument->BlockOnload();
|
||||
aRequest->mProgress = nsScriptLoadRequest::Progress_Compiling;
|
||||
|
||||
unused << runnable.forget();
|
||||
Unused << runnable.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
|
|
@ -387,7 +387,7 @@ support-files = test_XHR_timeout.js
|
|||
[test_blobconstructor.html]
|
||||
[test_blob_fragment_and_query.html]
|
||||
[test_bug166235.html]
|
||||
skip-if = buildapp == 'b2g' || toolkit == 'android' || e10s # b2g(clipboard undefined) b2g-debug(clipboard undefined) b2g-desktop(clipboard undefined)
|
||||
skip-if = buildapp == 'b2g' || toolkit == 'android' # b2g(clipboard undefined) b2g-debug(clipboard undefined) b2g-desktop(clipboard undefined)
|
||||
[test_bug199959.html]
|
||||
[test_bug218236.html]
|
||||
[test_bug218277.html]
|
||||
|
@ -829,7 +829,7 @@ support-files = file_bug1011748_redirect.sjs file_bug1011748_OK.sjs
|
|||
[test_user_select.html]
|
||||
skip-if = buildapp == 'mulet' || buildapp == 'b2g' || toolkit == 'android'
|
||||
[test_bug1081686.html]
|
||||
skip-if = buildapp == 'b2g' || toolkit == 'android' || e10s
|
||||
skip-if = buildapp == 'b2g' || toolkit == 'android'
|
||||
[test_window_define_nonconfigurable.html]
|
||||
skip-if = release_build
|
||||
[test_root_iframe.html]
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
skip-if(1) load 769464.html # bug 823822 - assert often leaks into other tests
|
||||
skip load 769464.html # bug 823822 - assert often leaks into other tests
|
||||
load 822340-1.html
|
||||
load 822340-2.html
|
||||
load 832899.html
|
||||
load 860591.html
|
||||
load 860551.html
|
||||
load 862610.html
|
||||
load 860591.html
|
||||
load 862092.html
|
||||
load 862610.html
|
||||
load 869038.html
|
||||
load 949940.html
|
||||
load 1010658-1.html
|
||||
|
|
|
@ -65,7 +65,7 @@ BluetoothDaemonA2dpModule::ConnectCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -86,7 +86,7 @@ BluetoothDaemonA2dpModule::DisconnectCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
|
|
@ -68,7 +68,7 @@ BluetoothDaemonAvrcpModule::GetPlayStatusRspCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -94,7 +94,7 @@ BluetoothDaemonAvrcpModule::ListPlayerAppAttrRspCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -118,7 +118,7 @@ BluetoothDaemonAvrcpModule::ListPlayerAppValueRspCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -143,7 +143,7 @@ BluetoothDaemonAvrcpModule::GetPlayerAppValueRspCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -167,7 +167,7 @@ BluetoothDaemonAvrcpModule::GetPlayerAppAttrTextRspCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -191,7 +191,7 @@ BluetoothDaemonAvrcpModule::GetPlayerAppValueTextRspCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -215,7 +215,7 @@ BluetoothDaemonAvrcpModule::GetElementAttrRspCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -237,7 +237,7 @@ BluetoothDaemonAvrcpModule::SetPlayerAppValueRspCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -266,7 +266,7 @@ BluetoothDaemonAvrcpModule::RegisterNotificationRspCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -288,7 +288,7 @@ BluetoothDaemonAvrcpModule::SetVolumeCmd(uint8_t aVolume,
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
|
|
@ -65,7 +65,7 @@ BluetoothDaemonCoreModule::EnableCmd(BluetoothResultHandler* aRes)
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
@ -82,7 +82,7 @@ BluetoothDaemonCoreModule::DisableCmd(BluetoothResultHandler* aRes)
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
@ -100,7 +100,7 @@ BluetoothDaemonCoreModule::GetAdapterPropertiesCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
@ -122,7 +122,7 @@ BluetoothDaemonCoreModule::GetAdapterPropertyCmd(BluetoothPropertyType aType,
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
@ -144,7 +144,7 @@ BluetoothDaemonCoreModule::SetAdapterPropertyCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
@ -166,7 +166,7 @@ BluetoothDaemonCoreModule::GetRemoteDevicePropertiesCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
@ -190,7 +190,7 @@ BluetoothDaemonCoreModule::GetRemoteDevicePropertyCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
@ -214,7 +214,7 @@ BluetoothDaemonCoreModule::SetRemoteDevicePropertyCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
@ -237,7 +237,7 @@ BluetoothDaemonCoreModule::GetRemoteServiceRecordCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
@ -258,7 +258,7 @@ BluetoothDaemonCoreModule::GetRemoteServicesCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
@ -275,7 +275,7 @@ BluetoothDaemonCoreModule::StartDiscoveryCmd(BluetoothResultHandler* aRes)
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
@ -292,7 +292,7 @@ BluetoothDaemonCoreModule::CancelDiscoveryCmd(BluetoothResultHandler* aRes)
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
@ -319,7 +319,7 @@ BluetoothDaemonCoreModule::CreateBondCmd(const BluetoothAddress& aBdAddr,
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
@ -341,7 +341,7 @@ BluetoothDaemonCoreModule::RemoveBondCmd(const BluetoothAddress& aBdAddr,
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
@ -363,7 +363,7 @@ BluetoothDaemonCoreModule::CancelBondCmd(const BluetoothAddress& aBdAddr,
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
@ -387,7 +387,7 @@ BluetoothDaemonCoreModule::PinReplyCmd(const BluetoothAddress& aBdAddr,
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
@ -411,7 +411,7 @@ BluetoothDaemonCoreModule::SspReplyCmd(const BluetoothAddress& aBdAddr,
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
@ -433,7 +433,7 @@ BluetoothDaemonCoreModule::DutModeConfigureCmd(bool aEnable,
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
@ -457,7 +457,7 @@ BluetoothDaemonCoreModule::DutModeSendCmd(uint16_t aOpcode,
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
@ -481,7 +481,7 @@ BluetoothDaemonCoreModule::LeTestModeCmd(uint16_t aOpcode,
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
|
|
@ -67,7 +67,7 @@ BluetoothDaemonGattModule::ClientRegisterCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -89,7 +89,7 @@ BluetoothDaemonGattModule::ClientUnregisterCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -113,7 +113,7 @@ BluetoothDaemonGattModule::ClientScanCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -143,7 +143,7 @@ BluetoothDaemonGattModule::ClientConnectCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -171,7 +171,7 @@ BluetoothDaemonGattModule::ClientDisconnectCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -196,7 +196,7 @@ BluetoothDaemonGattModule::ClientListenCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -222,7 +222,7 @@ BluetoothDaemonGattModule::ClientRefreshCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -250,7 +250,7 @@ BluetoothDaemonGattModule::ClientSearchServiceCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -279,7 +279,7 @@ BluetoothDaemonGattModule::ClientGetIncludedServiceCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -309,7 +309,7 @@ BluetoothDaemonGattModule::ClientGetCharacteristicCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -341,7 +341,7 @@ BluetoothDaemonGattModule::ClientGetDescriptorCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -369,7 +369,7 @@ BluetoothDaemonGattModule::ClientReadCharacteristicCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -396,7 +396,7 @@ BluetoothDaemonGattModule::ClientWriteCharacteristicCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -425,7 +425,7 @@ BluetoothDaemonGattModule::ClientReadDescriptorCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -453,7 +453,7 @@ BluetoothDaemonGattModule::ClientWriteDescriptorCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -477,7 +477,7 @@ BluetoothDaemonGattModule::ClientExecuteWriteCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -505,7 +505,7 @@ BluetoothDaemonGattModule::ClientRegisterNotificationCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -533,7 +533,7 @@ BluetoothDaemonGattModule::ClientDeregisterNotificationCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -558,7 +558,7 @@ BluetoothDaemonGattModule::ClientReadRemoteRssiCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -580,7 +580,7 @@ BluetoothDaemonGattModule::ClientGetDeviceTypeCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -616,7 +616,7 @@ BluetoothDaemonGattModule::ClientSetAdvDataCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -650,7 +650,7 @@ BluetoothDaemonGattModule::ClientTestCommandCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -672,7 +672,7 @@ BluetoothDaemonGattModule::ServerRegisterCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -694,7 +694,7 @@ BluetoothDaemonGattModule::ServerUnregisterCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -724,7 +724,7 @@ BluetoothDaemonGattModule::ServerConnectPeripheralCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -751,7 +751,7 @@ BluetoothDaemonGattModule::ServerDisconnectPeripheralCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -777,7 +777,7 @@ BluetoothDaemonGattModule::ServerAddServiceCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -804,7 +804,7 @@ BluetoothDaemonGattModule::ServerAddIncludedServiceCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -835,7 +835,7 @@ BluetoothDaemonGattModule::ServerAddCharacteristicCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -864,7 +864,7 @@ BluetoothDaemonGattModule::ServerAddDescriptorCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -891,7 +891,7 @@ BluetoothDaemonGattModule::ServerStartServiceCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -916,7 +916,7 @@ BluetoothDaemonGattModule::ServerStopServiceCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -941,7 +941,7 @@ BluetoothDaemonGattModule::ServerDeleteServiceCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -970,7 +970,7 @@ BluetoothDaemonGattModule::ServerSendIndicationCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -1003,7 +1003,7 @@ BluetoothDaemonGattModule::ServerSendResponseCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
|
|
@ -71,7 +71,7 @@ BluetoothDaemonHandsfreeModule::ConnectCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -93,7 +93,7 @@ BluetoothDaemonHandsfreeModule::DisconnectCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -115,7 +115,7 @@ BluetoothDaemonHandsfreeModule::ConnectAudioCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -137,7 +137,7 @@ BluetoothDaemonHandsfreeModule::DisconnectAudioCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -162,7 +162,7 @@ BluetoothDaemonHandsfreeModule::StartVoiceRecognitionCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -187,7 +187,7 @@ BluetoothDaemonHandsfreeModule::StopVoiceRecognitionCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -217,7 +217,7 @@ BluetoothDaemonHandsfreeModule::VolumeControlCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -246,7 +246,7 @@ BluetoothDaemonHandsfreeModule::DeviceStatusNotificationCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -275,7 +275,7 @@ BluetoothDaemonHandsfreeModule::CopsResponseCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -326,7 +326,7 @@ BluetoothDaemonHandsfreeModule::CindResponseCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -355,7 +355,7 @@ BluetoothDaemonHandsfreeModule::FormattedAtResponseCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -387,7 +387,7 @@ BluetoothDaemonHandsfreeModule::AtResponseCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -430,7 +430,7 @@ BluetoothDaemonHandsfreeModule::ClccResponseCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -463,7 +463,7 @@ BluetoothDaemonHandsfreeModule::PhoneStateChangeCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -488,7 +488,7 @@ BluetoothDaemonHandsfreeModule::ConfigureWbsCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
|
|
@ -445,7 +445,7 @@ BluetoothDaemonInterface::Init(
|
|||
// If we could not cleanup properly before and an old
|
||||
// instance of the daemon is still running, we kill it
|
||||
// here.
|
||||
unused << NS_WARN_IF(property_set("ctl.stop", "bluetoothd"));
|
||||
Unused << NS_WARN_IF(property_set("ctl.stop", "bluetoothd"));
|
||||
|
||||
mResultHandlerQ.AppendElement(aRes);
|
||||
|
||||
|
@ -1006,7 +1006,7 @@ BluetoothDaemonInterface::OnConnectError(int aIndex)
|
|||
mCmdChannel->Close();
|
||||
case CMD_CHANNEL:
|
||||
// Stop daemon and close listen socket
|
||||
unused << NS_WARN_IF(property_set("ctl.stop", "bluetoothd"));
|
||||
Unused << NS_WARN_IF(property_set("ctl.stop", "bluetoothd"));
|
||||
mListenSocket->Close();
|
||||
case LISTEN_SOCKET:
|
||||
if (!mResultHandlerQ.IsEmpty()) {
|
||||
|
|
|
@ -77,7 +77,7 @@ BluetoothDaemonSetupModule::RegisterModuleCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
@ -99,7 +99,7 @@ BluetoothDaemonSetupModule::UnregisterModuleCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
@ -123,7 +123,7 @@ BluetoothDaemonSetupModule::ConfigurationCmd(
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
|
|
@ -49,7 +49,7 @@ BluetoothDaemonSocketModule::ListenCmd(BluetoothSocketType aType,
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
@ -80,7 +80,7 @@ BluetoothDaemonSocketModule::ConnectCmd(const BluetoothAddress& aBdAddr,
|
|||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
unused << pdu.forget();
|
||||
Unused << pdu.forget();
|
||||
return rv;
|
||||
}
|
||||
|
||||
|
|
|
@ -2405,7 +2405,7 @@ BluetoothServiceBluedroid::RemoteDevicePropertiesNotification(
|
|||
break;
|
||||
}
|
||||
}
|
||||
unused << NS_WARN_IF(i == mGetRemoteServiceRecordArray.Length());
|
||||
Unused << NS_WARN_IF(i == mGetRemoteServiceRecordArray.Length());
|
||||
} else if (p.mType == PROPERTY_UNKNOWN) {
|
||||
/* Bug 1065999: working around unknown properties */
|
||||
} else {
|
||||
|
|
|
@ -1254,7 +1254,7 @@ AppendDeviceName(BluetoothSignal& aSignal)
|
|||
|
||||
NS_ENSURE_TRUE_VOID(success);
|
||||
|
||||
unused << handler.forget(); // picked up by callback handler
|
||||
Unused << handler.forget(); // picked up by callback handler
|
||||
}
|
||||
|
||||
class SetPairingConfirmationTask : public Task
|
||||
|
@ -1684,7 +1684,7 @@ private:
|
|||
|
||||
NS_ENSURE_TRUE(success, false);
|
||||
|
||||
unused << handler.forget(); // picked up by callback handler
|
||||
Unused << handler.forget(); // picked up by callback handler
|
||||
|
||||
return true;
|
||||
}
|
||||
|
@ -1723,7 +1723,7 @@ public:
|
|||
|
||||
NS_ENSURE_TRUE_VOID(success);
|
||||
|
||||
unused << handler.forget(); /* picked up by callback handler */
|
||||
Unused << handler.forget(); /* picked up by callback handler */
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -2414,7 +2414,7 @@ protected:
|
|||
return false;
|
||||
}
|
||||
|
||||
unused << handler.forget(); // picked up by callback handler
|
||||
Unused << handler.forget(); // picked up by callback handler
|
||||
|
||||
return true;
|
||||
}
|
||||
|
@ -2474,7 +2474,7 @@ public:
|
|||
DBUS_TYPE_INVALID);
|
||||
NS_ENSURE_TRUE_VOID(success);
|
||||
|
||||
unused << handler.forget(); // picked up by callback handler
|
||||
Unused << handler.forget(); // picked up by callback handler
|
||||
}
|
||||
|
||||
private:
|
||||
|
@ -2547,7 +2547,7 @@ public:
|
|||
DBUS_TYPE_INVALID);
|
||||
NS_ENSURE_TRUE_VOID(success);
|
||||
|
||||
unused << mRunnable.forget(); // picked up by callback handler
|
||||
Unused << mRunnable.forget(); // picked up by callback handler
|
||||
}
|
||||
|
||||
private:
|
||||
|
@ -2815,7 +2815,7 @@ protected:
|
|||
|
||||
NS_ENSURE_TRUE(success, false);
|
||||
|
||||
unused << handler.forget(); // picked up by callback handler
|
||||
Unused << handler.forget(); // picked up by callback handler
|
||||
|
||||
return true;
|
||||
}
|
||||
|
@ -2982,7 +2982,7 @@ public:
|
|||
1000, msg);
|
||||
NS_ENSURE_TRUE_VOID(success);
|
||||
|
||||
unused << mRunnable.forget(); // picked up by callback handler
|
||||
Unused << mRunnable.forget(); // picked up by callback handler
|
||||
}
|
||||
|
||||
private:
|
||||
|
@ -3127,7 +3127,7 @@ public:
|
|||
DBUS_TYPE_INVALID);
|
||||
NS_ENSURE_TRUE_VOID(success);
|
||||
|
||||
unused << mRunnable.forget(); // picked up by callback handler
|
||||
Unused << mRunnable.forget(); // picked up by callback handler
|
||||
|
||||
/**
|
||||
* FIXME: Bug 820274
|
||||
|
@ -3196,7 +3196,7 @@ public:
|
|||
DBUS_TYPE_INVALID);
|
||||
NS_ENSURE_TRUE_VOID(success);
|
||||
|
||||
unused << mRunnable.forget(); // picked up by callback handler
|
||||
Unused << mRunnable.forget(); // picked up by callback handler
|
||||
}
|
||||
|
||||
protected:
|
||||
|
@ -3689,7 +3689,7 @@ public:
|
|||
DBUS_TYPE_INVALID);
|
||||
NS_ENSURE_TRUE_VOID(success);
|
||||
|
||||
unused << handler.forget(); // picked up by callback handler
|
||||
Unused << handler.forget(); // picked up by callback handler
|
||||
}
|
||||
|
||||
private:
|
||||
|
@ -4006,7 +4006,7 @@ public:
|
|||
DBUS_TYPE_INVALID);
|
||||
NS_ENSURE_TRUE_VOID(success);
|
||||
|
||||
unused << mRunnable.forget(); // picked up by callback handler
|
||||
Unused << mRunnable.forget(); // picked up by callback handler
|
||||
}
|
||||
|
||||
private:
|
||||
|
@ -4136,7 +4136,7 @@ public:
|
|||
DBUS_TYPE_INVALID);
|
||||
NS_ENSURE_TRUE_VOID(success);
|
||||
|
||||
unused << mRunnable.forget(); // picked up by callback handler
|
||||
Unused << mRunnable.forget(); // picked up by callback handler
|
||||
}
|
||||
|
||||
private:
|
||||
|
|
|
@ -454,7 +454,7 @@ BluetoothService::SetEnabled(bool aEnabled)
|
|||
GetAllBluetoothActors(childActors);
|
||||
|
||||
for (uint32_t index = 0; index < childActors.Length(); index++) {
|
||||
unused << childActors[index]->SendEnabled(aEnabled);
|
||||
Unused << childActors[index]->SendEnabled(aEnabled);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
#include "BluetoothReplyRunnable.h"
|
||||
#include "BluetoothService.h"
|
||||
|
||||
using mozilla::unused;
|
||||
using mozilla::Unused;
|
||||
USING_BLUETOOTH_NAMESPACE
|
||||
|
||||
/*******************************************************************************
|
||||
|
@ -99,7 +99,7 @@ BluetoothParent::BeginShutdown()
|
|||
{
|
||||
// Only do something here if we haven't yet begun the shutdown sequence.
|
||||
if (mShutdownState == Running) {
|
||||
unused << SendBeginShutdown();
|
||||
Unused << SendBeginShutdown();
|
||||
mShutdownState = SentBeginShutdown;
|
||||
}
|
||||
}
|
||||
|
@ -357,7 +357,7 @@ BluetoothParent::DeallocPBluetoothRequestParent(PBluetoothRequestParent* aActor)
|
|||
void
|
||||
BluetoothParent::Notify(const BluetoothSignal& aSignal)
|
||||
{
|
||||
unused << SendNotify(aSignal);
|
||||
Unused << SendNotify(aSignal);
|
||||
}
|
||||
|
||||
/*******************************************************************************
|
||||
|
|
|
@ -60,7 +60,7 @@ BroadcastChannelParent::RecvClose()
|
|||
mService->UnregisterActor(this);
|
||||
mService = nullptr;
|
||||
|
||||
unused << Send__delete__(this);
|
||||
Unused << Send__delete__(this);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
@ -105,7 +105,7 @@ BroadcastChannelParent::CheckAndDeliver(const ClonedMessageData& aData,
|
|||
newData.blobsParent()[i] = blobParent;
|
||||
}
|
||||
|
||||
unused << SendNotify(newData);
|
||||
Unused << SendNotify(newData);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -20,7 +20,7 @@ support-files =
|
|||
[test_broadcastchannel_worker.html]
|
||||
[test_broadcastchannel_worker_alive.html]
|
||||
[test_broadcastchannel_mozbrowser.html]
|
||||
skip-if = e10s || buildapp == 'b2g'
|
||||
skip-if = buildapp == 'b2g'
|
||||
[test_broadcastchannel_mozbrowser2.html]
|
||||
skip-if = e10s || buildapp == 'b2g'
|
||||
skip-if = buildapp == 'b2g'
|
||||
[test_bfcache.html]
|
||||
|
|
|
@ -24,7 +24,7 @@
|
|||
|
||||
namespace {
|
||||
|
||||
using mozilla::unused;
|
||||
using mozilla::Unused;
|
||||
using mozilla::dom::cache::CachePushStreamChild;
|
||||
using mozilla::dom::cache::CacheReadStream;
|
||||
using mozilla::dom::cache::CacheReadStreamOrVoid;
|
||||
|
@ -54,7 +54,7 @@ CleanupChildFds(CacheReadStream& aReadStream, CleanupAction aAction)
|
|||
MOZ_ASSERT(fdSetActor);
|
||||
|
||||
if (aAction == Delete) {
|
||||
unused << fdSetActor->Send__delete__(fdSetActor);
|
||||
Unused << fdSetActor->Send__delete__(fdSetActor);
|
||||
}
|
||||
|
||||
// FileDescriptorSet doesn't clear its fds in its ActorDestroy, so we
|
||||
|
@ -114,7 +114,7 @@ CleanupParentFds(CacheReadStream& aReadStream, CleanupAction aAction)
|
|||
MOZ_ASSERT(fdSetActor);
|
||||
|
||||
if (aAction == Delete) {
|
||||
unused << fdSetActor->Send__delete__(fdSetActor);
|
||||
Unused << fdSetActor->Send__delete__(fdSetActor);
|
||||
}
|
||||
|
||||
// FileDescriptorSet doesn't clear its fds in its ActorDestroy, so we
|
||||
|
@ -482,7 +482,7 @@ AutoParentOpResult::~AutoParentOpResult()
|
|||
if (action == Forget || result.actorParent() == nullptr) {
|
||||
break;
|
||||
}
|
||||
unused << PCacheParent::Send__delete__(result.actorParent());
|
||||
Unused << PCacheParent::Send__delete__(result.actorParent());
|
||||
}
|
||||
default:
|
||||
// other types do not need clean up
|
||||
|
@ -490,7 +490,7 @@ AutoParentOpResult::~AutoParentOpResult()
|
|||
}
|
||||
|
||||
if (action == Delete && mStreamControl) {
|
||||
unused << PCacheStreamControlParent::Send__delete__(mStreamControl);
|
||||
Unused << PCacheStreamControlParent::Send__delete__(mStreamControl);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -124,7 +124,7 @@ CacheChild::StartDestroy()
|
|||
MOZ_ASSERT(!mListener);
|
||||
|
||||
// Start actor destruction from parent process
|
||||
unused << SendTeardown();
|
||||
Unused << SendTeardown();
|
||||
}
|
||||
|
||||
void
|
||||
|
|
|
@ -56,7 +56,7 @@ CacheOpParent::Execute(ManagerId* aManagerId)
|
|||
RefPtr<Manager> manager;
|
||||
nsresult rv = Manager::GetOrCreate(aManagerId, getter_AddRefs(manager));
|
||||
if (NS_WARN_IF(NS_FAILED(rv))) {
|
||||
unused << Send__delete__(this, ErrorResult(rv), void_t());
|
||||
Unused << Send__delete__(this, ErrorResult(rv), void_t());
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -144,7 +144,7 @@ CacheOpParent::OnPrincipalVerified(nsresult aRv, ManagerId* aManagerId)
|
|||
mVerifier = nullptr;
|
||||
|
||||
if (NS_WARN_IF(NS_FAILED(aRv))) {
|
||||
unused << Send__delete__(this, ErrorResult(aRv), void_t());
|
||||
Unused << Send__delete__(this, ErrorResult(aRv), void_t());
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -165,7 +165,7 @@ CacheOpParent::OnOpComplete(ErrorResult&& aRv, const CacheOpResult& aResult,
|
|||
// Never send an op-specific result if we have an error. Instead, send
|
||||
// void_t() to ensure that we don't leak actors on the child side.
|
||||
if (NS_WARN_IF(aRv.Failed())) {
|
||||
unused << Send__delete__(this, aRv, void_t());
|
||||
Unused << Send__delete__(this, aRv, void_t());
|
||||
aRv.SuppressException(); // We serialiazed it, as best we could.
|
||||
return;
|
||||
}
|
||||
|
@ -190,7 +190,7 @@ CacheOpParent::OnOpComplete(ErrorResult&& aRv, const CacheOpResult& aResult,
|
|||
result.Add(aSavedRequestList[i], aStreamList);
|
||||
}
|
||||
|
||||
unused << Send__delete__(this, aRv, result.SendAsOpResult());
|
||||
Unused << Send__delete__(this, aRv, result.SendAsOpResult());
|
||||
}
|
||||
|
||||
already_AddRefed<nsIInputStream>
|
||||
|
|
|
@ -192,7 +192,7 @@ CachePushStreamChild::DoRead()
|
|||
|
||||
// If we read any data from the stream, send it across.
|
||||
if (!buffer.IsEmpty()) {
|
||||
unused << SendBuffer(buffer);
|
||||
Unused << SendBuffer(buffer);
|
||||
}
|
||||
|
||||
if (rv == NS_BASE_STREAM_WOULD_BLOCK) {
|
||||
|
@ -255,7 +255,7 @@ CachePushStreamChild::OnEnd(nsresult aRv)
|
|||
}
|
||||
|
||||
// This will trigger an ActorDestroy() from the parent side
|
||||
unused << SendClose(aRv);
|
||||
Unused << SendClose(aRv);
|
||||
}
|
||||
|
||||
} // namespace cache
|
||||
|
|
|
@ -79,7 +79,7 @@ bool
|
|||
CachePushStreamParent::RecvClose(const nsresult& aRv)
|
||||
{
|
||||
mWriter->CloseWithStatus(aRv);
|
||||
unused << Send__delete__(this);
|
||||
Unused << Send__delete__(this);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
|
@ -32,7 +32,7 @@ namespace mozilla {
|
|||
namespace dom {
|
||||
namespace cache {
|
||||
|
||||
using mozilla::unused;
|
||||
using mozilla::Unused;
|
||||
using mozilla::ErrorResult;
|
||||
using mozilla::dom::workers::WorkerPrivate;
|
||||
using mozilla::ipc::BackgroundChild;
|
||||
|
|
|
@ -53,7 +53,7 @@ CacheStorageChild::ExecuteOp(nsIGlobalObject* aGlobal, Promise* aPromise,
|
|||
nsISupports* aParent, const CacheOpArgs& aArgs)
|
||||
{
|
||||
mNumChildActors += 1;
|
||||
unused << SendPCacheOpConstructor(
|
||||
Unused << SendPCacheOpConstructor(
|
||||
new CacheOpChild(GetFeature(), aGlobal, aParent, aPromise), aArgs);
|
||||
}
|
||||
|
||||
|
@ -99,7 +99,7 @@ CacheStorageChild::StartDestroy()
|
|||
MOZ_ASSERT(!mListener);
|
||||
|
||||
// Start actor destruction from parent process
|
||||
unused << SendTeardown();
|
||||
Unused << SendTeardown();
|
||||
}
|
||||
|
||||
void
|
||||
|
|
|
@ -101,7 +101,7 @@ CacheStorageParent::RecvPCacheOpConstructor(PCacheOpParent* aActor,
|
|||
}
|
||||
|
||||
if (NS_WARN_IF(NS_FAILED(mVerifiedStatus))) {
|
||||
unused << CacheOpParent::Send__delete__(actor, ErrorResult(mVerifiedStatus),
|
||||
Unused << CacheOpParent::Send__delete__(actor, ErrorResult(mVerifiedStatus),
|
||||
void_t());
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -101,7 +101,7 @@ CacheStreamControlChild::SerializeFds(CacheReadStream* aReadStreamOut,
|
|||
if (!aFds.IsEmpty()) {
|
||||
fdSet = Manager()->SendPFileDescriptorSetConstructor(aFds[0]);
|
||||
for (uint32_t i = 1; i < aFds.Length(); ++i) {
|
||||
unused << fdSet->SendAddFileDescriptor(aFds[i]);
|
||||
Unused << fdSet->SendAddFileDescriptor(aFds[i]);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -128,14 +128,14 @@ CacheStreamControlChild::DeserializeFds(const CacheReadStream& aReadStream,
|
|||
fdSetActor->ForgetFileDescriptors(aFdsOut);
|
||||
MOZ_ASSERT(!aFdsOut.IsEmpty());
|
||||
|
||||
unused << fdSetActor->Send__delete__(fdSetActor);
|
||||
Unused << fdSetActor->Send__delete__(fdSetActor);
|
||||
}
|
||||
|
||||
void
|
||||
CacheStreamControlChild::NoteClosedAfterForget(const nsID& aId)
|
||||
{
|
||||
NS_ASSERT_OWNINGTHREAD(CacheStreamControlChild);
|
||||
unused << SendNoteClosed(aId);
|
||||
Unused << SendNoteClosed(aId);
|
||||
|
||||
// A stream has closed. If we delayed StartDestry() due to this stream
|
||||
// being read, then we should check to see if any of the remaining streams
|
||||
|
|
|
@ -61,7 +61,7 @@ CacheStreamControlParent::SerializeFds(CacheReadStream* aReadStreamOut,
|
|||
if (!aFds.IsEmpty()) {
|
||||
fdSet = Manager()->SendPFileDescriptorSetConstructor(aFds[0]);
|
||||
for (uint32_t i = 1; i < aFds.Length(); ++i) {
|
||||
unused << fdSet->SendAddFileDescriptor(aFds[i]);
|
||||
Unused << fdSet->SendAddFileDescriptor(aFds[i]);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -141,7 +141,7 @@ CacheStreamControlParent::Close(const nsID& aId)
|
|||
{
|
||||
NS_ASSERT_OWNINGTHREAD(CacheStreamControlParent);
|
||||
NotifyClose(aId);
|
||||
unused << SendClose(aId);
|
||||
Unused << SendClose(aId);
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -149,7 +149,7 @@ CacheStreamControlParent::CloseAll()
|
|||
{
|
||||
NS_ASSERT_OWNINGTHREAD(CacheStreamControlParent);
|
||||
NotifyCloseAll();
|
||||
unused << SendCloseAll();
|
||||
Unused << SendCloseAll();
|
||||
}
|
||||
|
||||
void
|
||||
|
|
|
@ -187,7 +187,7 @@ BodyCancelWrite(nsIFile* aBaseDir, nsISupports* aCopyContext)
|
|||
MOZ_ASSERT(aCopyContext);
|
||||
|
||||
nsresult rv = NS_CancelAsyncCopy(aCopyContext, NS_ERROR_ABORT);
|
||||
unused << NS_WARN_IF(NS_FAILED(rv));
|
||||
Unused << NS_WARN_IF(NS_FAILED(rv));
|
||||
|
||||
// The partially written file must be cleaned up after the async copy
|
||||
// makes its callback.
|
||||
|
|
|
@ -138,7 +138,7 @@ public:
|
|||
}
|
||||
|
||||
rv = BodyDeleteFiles(dbDir, mDeletedBodyIdList);
|
||||
unused << NS_WARN_IF(NS_FAILED(rv));
|
||||
Unused << NS_WARN_IF(NS_FAILED(rv));
|
||||
|
||||
aResolver->Resolve(rv);
|
||||
}
|
||||
|
@ -897,7 +897,7 @@ private:
|
|||
}
|
||||
|
||||
rv = trans.Commit();
|
||||
unused << NS_WARN_IF(NS_FAILED(rv));
|
||||
Unused << NS_WARN_IF(NS_FAILED(rv));
|
||||
|
||||
DoResolve(rv);
|
||||
}
|
||||
|
|
|
@ -20,7 +20,7 @@ namespace mozilla {
|
|||
namespace dom {
|
||||
namespace cache {
|
||||
|
||||
using mozilla::unused;
|
||||
using mozilla::Unused;
|
||||
using mozilla::ipc::FileDescriptor;
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
|
|
Некоторые файлы не были показаны из-за слишком большого количества измененных файлов Показать больше
Загрузка…
Ссылка в новой задаче