From ad3a8d752b075e280db0bd8e3c50eddaa78cb1a5 Mon Sep 17 00:00:00 2001 From: Matt Brubeck Date: Fri, 26 Jul 2013 14:34:02 -0700 Subject: [PATCH] Bug 898120 - Fix leak of global variable in Metro selection code [r=jimm] --- browser/metro/base/content/library/SelectionPrototype.js | 3 ++- .../metro/base/tests/mochitest/browser_selection_urlbar.js | 6 ------ browser/metro/base/tests/mochitest/browser_urlbar.js | 1 - 3 files changed, 2 insertions(+), 8 deletions(-) diff --git a/browser/metro/base/content/library/SelectionPrototype.js b/browser/metro/base/content/library/SelectionPrototype.js index e9e63ddebd67..c8fdb2da62ee 100644 --- a/browser/metro/base/content/library/SelectionPrototype.js +++ b/browser/metro/base/content/library/SelectionPrototype.js @@ -1,6 +1,7 @@ /* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +"use strict"; /* * SelectionPrototype - common base class used by both chrome and content selection logic. @@ -776,7 +777,7 @@ SelectionPrototype.prototype = { } // Store the client rect of target element - r = this._getTargetClientRect(); + let r = this._getTargetClientRect(); seldata.element.left = r.left + this._contentOffset.x; seldata.element.top = r.top + this._contentOffset.y; seldata.element.right = r.right + this._contentOffset.x; diff --git a/browser/metro/base/tests/mochitest/browser_selection_urlbar.js b/browser/metro/base/tests/mochitest/browser_selection_urlbar.js index 0be559c23b1c..19102a7bd527 100644 --- a/browser/metro/base/tests/mochitest/browser_selection_urlbar.js +++ b/browser/metro/base/tests/mochitest/browser_selection_urlbar.js @@ -63,9 +63,6 @@ gTests.push({ yield waitForMs(100); ok(SelectionHelperUI.isSelectionUIVisible, "selection ui active"); - - // taps on the urlbar-edit leak a ClientRect property on the window - delete window.r; }, }); @@ -89,7 +86,6 @@ gTests.push({ ok(edit.popup.popupOpen, "bug: popup should be showing"); clearSelection(edit); - delete window.r; } }); @@ -119,7 +115,6 @@ gTests.push({ ok(SelectionHelperUI.isCaretUIVisible, "caret browsing enabled"); clearSelection(edit); - delete window.r; } }); @@ -136,7 +131,6 @@ gTests.push({ edit.blur(); ok(!SelectionHelperUI.isSelectionUIVisible, "selection no longer enabled"); clearSelection(edit); - delete window.r; } }); diff --git a/browser/metro/base/tests/mochitest/browser_urlbar.js b/browser/metro/base/tests/mochitest/browser_urlbar.js index 48603dbbed5f..a3d2e33168c5 100644 --- a/browser/metro/base/tests/mochitest/browser_urlbar.js +++ b/browser/metro/base/tests/mochitest/browser_urlbar.js @@ -109,7 +109,6 @@ function setUp() { function tearDown() { yield removeMockSearchDefault(); Browser.closeTab(Browser.selectedTab, { forceClose: true }); - delete window.r; } gTests.push({