Closed Bug 1362092 Opened 7 years ago Closed 7 years ago

Backtrack addon causes premature insertion of tabs' lazy browsers

Categories

(WebExtensions :: General, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: u462496, Unassigned)

References

Details

[bug 1345098] Lazy browser prematurely inserted via 'messageManager' property access:
getter@chrome://browser/content/tabbrowser.xml:2122:45
onTabClosing@resource://gre/modules/addons/XPIProvider.jsm -> jar:file:///Users/allasso/Library/Application%20Support/Firefox/Profiles/ALT2/extensions/backtrack@byalexv.co.uk.xpi!/bootstrap.js:1164:9
onSSTabClosing@resource://gre/modules/addons/XPIProvider.jsm -> jar:file:///Users/allasso/Library/Application%20Support/Firefox/Profiles/ALT2/extensions/backtrack@byalexv.co.uk.xpi!/bootstrap.js:1094:5
ssi_onTabClose@resource:///modules/sessionstore/SessionStore.jsm:1930:5
ssi_handleEvent@resource:///modules/sessionstore/SessionStore.jsm:1012:11
_beginRemoveTab@chrome://browser/content/tabbrowser.xml:2772:13
removeTab@chrome://browser/content/tabbrowser.xml:2639:18
removeAllTabsBut@chrome://browser/content/tabbrowser.xml:2587:19
oncommand@chrome://browser/content/browser.xul:1:1
(In reply to Kevin Jones from comment #0)

Do you think that this addon migth also be at fault when I close the browser. I still get all content processes started at shutdown, even after Bug 1360940 landed. (But now the error console is closed before it could show anything)
(In reply to avada from comment #1)
> (In reply to Kevin Jones from comment #0)
> 
> Do you think that this addon migth also be at fault when I close the
> browser. I still get all content processes started at shutdown, even after
> Bug 1360940 landed. (But now the error console is closed before it could
> show anything)

Rather than closing Firefox completely, try to use two windows, close one of them and check the error console.
(In reply to Dão Gottwald [::dao] from comment #2)
> (In reply to avada from comment #1)
> Rather than closing Firefox completely, try to use two windows, close one of
> them and check the error console.

I did. When I disabled Backtrack content processes weren't started. But only for closing the window or browser case. When closing left/right/other tabs it looks like another addon (apparently Findbar Tweak) took up the mantle.
Lazy tabs seem super volatile when using addons. Out of curiosity couldn't "'messageManager' property access" be made to preserve laziness? It seems addons like to use it.


Here's the error console output:

"[bug 1345098] Lazy browser prematurely inserted via 'messageManager' property access:
getter@chrome://browser/content/tabbrowser.xml:2126:45
messageBrowser@resource://gre/modules/addons/XPIProvider.jsm -> jar:file:///C:/Users/Zsolt/AppData/Roaming/Mozilla/Firefox/Profiles/q74vpos5.teszt-teljes/extensions/fbt@quicksaver.xpi!/bootstrap.js -> resource://findbartweak/modules/utils/Modules.jsm -> resource://findbartweak/modules/utils/Messenger.jsm:88:1
unloadFromBrowser@resource://gre/modules/addons/XPIProvider.jsm -> jar:file:///C:/Users/Zsolt/AppData/Roaming/Mozilla/Firefox/Profiles/q74vpos5.teszt-teljes/extensions/fbt@quicksaver.xpi!/bootstrap.js -> resource://findbartweak/modules/utils/Modules.jsm -> resource://findbartweak/modules/utils/Messenger.jsm:143:3
handleEvent@resource://gre/modules/addons/XPIProvider.jsm -> jar:file:///C:/Users/Zsolt/AppData/Roaming/Mozilla/Firefox/Profiles/q74vpos5.teszt-teljes/extensions/fbt@quicksaver.xpi!/bootstrap.js -> resource://findbartweak/modules/utils/Modules.jsm -> resource://findbartweak/modules/findInTabsMini.jsm:30:5
handleEvent@resource://gre/modules/addons/XPIProvider.jsm -> jar:file:///C:/Users/Zsolt/AppData/Roaming/Mozilla/Firefox/Profiles/q74vpos5.teszt-teljes/extensions/fbt@quicksaver.xpi!/bootstrap.js -> resource://findbartweak/modules/utils/Modules.jsm -> resource://findbartweak/modules/utils/Listeners.jsm:59:6
_beginRemoveTab@chrome://tabmixplus/content/changecode.js line 220 > eval:80:13
removeTab@chrome://browser/content/tabbrowser.xml:2643:18
change_gBrowser/gBrowser.removeTab@chrome://tabmixplus/content/minit/tablib.js:255:14
addNewFunctionsTo_gBrowser/gBrowser.closeRightTabs@chrome://tabmixplus/content/minit/tablib.js:1255:13
addNewFunctionsTo_gBrowser/gBrowser._closeRightTabs@chrome://tabmixplus/content/minit/tablib.js:1238:9
oncommand@chrome://browser/content/browser.xul:1:1
" tabbrowser.xml:2126


"[bug 1345098] Lazy browser prematurely inserted via 'messageManager' property access:
getter@chrome://browser/content/tabbrowser.xml:2126:45
messageBrowser@resource://gre/modules/addons/XPIProvider.jsm -> jar:file:///C:/Users/Zsolt/AppData/Roaming/Mozilla/Firefox/Profiles/q74vpos5.teszt-teljes/extensions/fbt@quicksaver.xpi!/bootstrap.js -> resource://findbartweak/modules/utils/Modules.jsm -> resource://findbartweak/modules/utils/Messenger.jsm:88:1
unloadFromBrowser@resource://gre/modules/addons/XPIProvider.jsm -> jar:file:///C:/Users/Zsolt/AppData/Roaming/Mozilla/Firefox/Profiles/q74vpos5.teszt-teljes/extensions/fbt@quicksaver.xpi!/bootstrap.js -> resource://findbartweak/modules/utils/Modules.jsm -> resource://findbartweak/modules/utils/Messenger.jsm:143:3
handleEvent@resource://gre/modules/addons/XPIProvider.jsm -> jar:file:///C:/Users/Zsolt/AppData/Roaming/Mozilla/Firefox/Profiles/q74vpos5.teszt-teljes/extensions/fbt@quicksaver.xpi!/bootstrap.js -> resource://findbartweak/modules/utils/Modules.jsm -> resource://findbartweak/modules/findInTabsMini.jsm:30:5
handleEvent@resource://gre/modules/addons/XPIProvider.jsm -> jar:file:///C:/Users/Zsolt/AppData/Roaming/Mozilla/Firefox/Profiles/q74vpos5.teszt-teljes/extensions/fbt@quicksaver.xpi!/bootstrap.js -> resource://findbartweak/modules/utils/Modules.jsm -> resource://findbartweak/modules/utils/Listeners.jsm:59:6
_beginRemoveTab@chrome://tabmixplus/content/changecode.js line 220 > eval:80:13
removeTab@chrome://browser/content/tabbrowser.xml:2643:18
change_gBrowser/gBrowser.removeTab@chrome://tabmixplus/content/minit/tablib.js:255:14
TMP_closeLeftTabs@chrome://tabmixplus/content/minit/tablib.js:1274:13
addNewFunctionsTo_gBrowser/gBrowser._closeLeftTabs@chrome://tabmixplus/content/minit/tablib.js:1231:9
oncommand@chrome://browser/content/browser.xul:1:1
" tabbrowser.xml:2126


"[bug 1345098] Lazy browser prematurely inserted via 'messageManager' property access:
getter@chrome://browser/content/tabbrowser.xml:2126:45
messageBrowser@resource://gre/modules/addons/XPIProvider.jsm -> jar:file:///C:/Users/Zsolt/AppData/Roaming/Mozilla/Firefox/Profiles/q74vpos5.teszt-teljes/extensions/fbt@quicksaver.xpi!/bootstrap.js -> resource://findbartweak/modules/utils/Modules.jsm -> resource://findbartweak/modules/utils/Messenger.jsm:88:1
unloadFromBrowser@resource://gre/modules/addons/XPIProvider.jsm -> jar:file:///C:/Users/Zsolt/AppData/Roaming/Mozilla/Firefox/Profiles/q74vpos5.teszt-teljes/extensions/fbt@quicksaver.xpi!/bootstrap.js -> resource://findbartweak/modules/utils/Modules.jsm -> resource://findbartweak/modules/utils/Messenger.jsm:143:3
handleEvent@resource://gre/modules/addons/XPIProvider.jsm -> jar:file:///C:/Users/Zsolt/AppData/Roaming/Mozilla/Firefox/Profiles/q74vpos5.teszt-teljes/extensions/fbt@quicksaver.xpi!/bootstrap.js -> resource://findbartweak/modules/utils/Modules.jsm -> resource://findbartweak/modules/findInTabsMini.jsm:30:5
handleEvent@resource://gre/modules/addons/XPIProvider.jsm -> jar:file:///C:/Users/Zsolt/AppData/Roaming/Mozilla/Firefox/Profiles/q74vpos5.teszt-teljes/extensions/fbt@quicksaver.xpi!/bootstrap.js -> resource://findbartweak/modules/utils/Modules.jsm -> resource://findbartweak/modules/utils/Listeners.jsm:59:6
_beginRemoveTab@chrome://tabmixplus/content/changecode.js line 220 > eval:80:13
removeTab@chrome://browser/content/tabbrowser.xml:2643:18
change_gBrowser/gBrowser.removeTab@chrome://tabmixplus/content/minit/tablib.js:255:14
TMP_removeAllTabsBut@chrome://tabmixplus/content/minit/tablib.js:1292:13
oncommand@chrome://browser/content/browser.xul:1:1
"
BackTrack Tab History v0.16 (currently in dev channel on AMO) should no longer accesses the messageManager on tab close if the tab has the pending attribute set.

Can't help you with Findbar Tweak, I'm afraid.
(In reply to Alex Vallat from comment #4)
> BackTrack Tab History v0.16 (currently in dev channel on AMO) should no
> longer accesses the messageManager on tab close if the tab has the pending
> attribute set.

Indeed. I can verify that v0.16 doesn't cause insertions on tab/window closing.

> 
> Can't help you with Findbar Tweak, I'm afraid.

Sadly no-one can. Quicksaver abandoned all addon development due to the XUL phase-out...
(In reply to avada from comment #3)
> Out of curiosity couldn't
> "'messageManager' property access" be made to preserve laziness? It seems
> addons like to use it.

Certain property accesses on the lazy browser will force insertion.  This is a safety catch to keep addons from simply breaking if they try to access them.  In some cases where the property is simply supplying some values for example userTypedValue, we are able to supply a value or function in proxy.  Unfortunately this is not the case with messageManager and simply not inserting the browser would in most cases cause things to break.
(In reply to Kevin Jones from comment #6)
> (In reply to avada from comment #3)
> > Out of curiosity couldn't
> > "'messageManager' property access" be made to preserve laziness? It seems
> > addons like to use it.
> 
> Certain property accesses on the lazy browser will force insertion.  This is
> a safety catch to keep addons from simply breaking if they try to access
> them.  In some cases where the property is simply supplying some values for
> example userTypedValue, we are able to supply a value or function in proxy. 
> Unfortunately this is not the case with messageManager and simply not
> inserting the browser would in most cases cause things to break.

My explanation was not very complete.  There are many properties which are created when the browser is inserted into the document which do not normally exist beforehand (in lazy state).  Thus the reason for the "safety catch".
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Component: Add-ons → General
Product: Tech Evangelism → WebExtensions
You need to log in before you can comment on or make changes to this bug.