From 759be3c8161e38209d1e4a05c2819fd5bb87e7b1 Mon Sep 17 00:00:00 2001 From: Benjamin Smedberg Date: Sat, 2 Nov 2013 11:53:26 -0400 Subject: [PATCH] Bug 745187 part B - If a plugin is already activated, don't refresh the page. --- browser/base/content/browser-plugins.js | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/browser/base/content/browser-plugins.js b/browser/base/content/browser-plugins.js index 43d5279929b6..5172f82b7735 100644 --- a/browser/base/content/browser-plugins.js +++ b/browser/base/content/browser-plugins.js @@ -728,16 +728,18 @@ var gPluginHandler = { let pluginFound = false; for (let plugin of plugins) { plugin.QueryInterface(Ci.nsIObjectLoadingContent); - // canActivatePlugin will return false if this isn't a known plugin type, - // so the pluginHost.getPermissionStringForType call is protected - if (gPluginHandler.canActivatePlugin(plugin) && - aPluginInfo.permissionString == pluginHost.getPermissionStringForType(plugin.actualType)) { - let overlay = this.getPluginUI(plugin, "main"); - if (overlay) { - overlay.removeEventListener("click", gPluginHandler._overlayClickListener, true); - } - plugin.playPlugin(); + if (!gPluginHandler.isKnownPlugin(plugin)) { + continue; + } + if (aPluginInfo.permissionString == pluginHost.getPermissionStringForType(plugin.actualType)) { pluginFound = true; + if (gPluginHandler.canActivatePlugin(plugin)) { + let overlay = this.getPluginUI(plugin, "main"); + if (overlay) { + overlay.removeEventListener("click", gPluginHandler._overlayClickListener, true); + } + plugin.playPlugin(); + } } }