Stop depending on framescripts with `ExtensionGlobal`
Categories
(WebExtensions :: General, defect, P2)
Tracking
(Fission Milestone:MVP, firefox-esr78 wontfix, firefox-esr91 wontfix, firefox92 wontfix, firefox93 wontfix, firefox94 wontfix, firefox95 fixed)
People
(Reporter: nika, Assigned: zombie)
References
(Blocks 3 open bugs)
Details
(Whiteboard: fission-soft-blocker)
Attachments
(4 files)
Currently, whenever a messagemanager for a tab is created, a tab-content-frameloader-created
notification is fired from a framescript loaded by an extension. As we don't load framescripts for out-of-process subframes, this means that the observer notification to create ExtensionGlobal
objects (https://searchfox.org/mozilla-central/rev/3aef835f6cb12e607154d56d68726767172571e4/toolkit/components/extensions/ExtensionProcessScript.jsm#146-150) will never fire, and any functionality tied to these objects will be broken in extension code for out-of-process iframes.
It appears this functionality is largely used to implement getFrameData
which is used to fetch information about tabId
, windowId
, devtoolsToolboxInfo
, and viewType
for a particular frame. These getters will likely behave incorrectly in cross-origin subframes.
Updated•4 years ago
|
Comment 2•4 years ago
|
||
Assigning to zombie as he's looking into this.
Updated•4 years ago
|
Updated•4 years ago
|
Comment 4•4 years ago
|
||
This bug is a soft blocker for Fission M8. We'd like to fix it before our M8 Release experiment, but we won't delay the experiment waiting for it.
Comment 5•4 years ago
|
||
Tomislav recommended we move this bug from Fission Milestone M8 to MVP because he would not feel comfortable uplifting a fix to Beta.
Assignee | ||
Comment 6•4 years ago
|
||
Also remove windowId getters from Context classes, as they're largely unused.
Updated•4 years ago
|
Assignee | ||
Comment 7•4 years ago
|
||
Depends on D123220
Assignee | ||
Comment 9•4 years ago
|
||
There will be 4-5 patches, probably all independent, I'll be landing each separately.
Comment 10•4 years ago
|
||
bugherder |
Comment 11•4 years ago
|
||
Backed out for bc failures on browser_shims.js
Backout link: https://hg.mozilla.org/integration/autoland/rev/42f61fda14dc39e2d87d42427871479dae7d489a
Log link: https://treeherder.mozilla.org/logviewer?job_id=349538440&repo=autoland&lineNumber=6797
Comment 12•4 years ago
|
||
Please also check gv-junit failures -> https://treeherder.mozilla.org/logviewer?job_id=349541280&repo=autoland&lineNumber=2072
Comment 13•4 years ago
|
||
Backout merged to central: https://hg.mozilla.org/mozilla-central/rev/42f61fda14dc39e2d87d42427871479dae7d489a
Comment 14•4 years ago
|
||
Assignee | ||
Comment 15•4 years ago
|
||
There's something wrong with the order of above messages, I didn't push the same patch again (without changes) after it got backed out, it seems that notification is just late.
Comment 16•4 years ago
|
||
Comment 17•4 years ago
•
|
||
Backed out changeset 38cfb452cecf (Bug 1708243) for causing mochitest failures on test_ext_tabs_sendMessage.html.
Backout link
Push with failures
Failure Log
Comment 18•4 years ago
|
||
Comment 19•4 years ago
•
|
||
Backed out changeset 1395c54325a7 (Bug 1708243) for causing gv-junit failures.
Backout link
Push with failures
Failure Log
Comment 20•4 years ago
|
||
Comment 21•4 years ago
|
||
Backed out for causing geckoview failures.
-
backout: https://hg.mozilla.org/integration/autoland/rev/e8a630d41a7755dbc6c19093f96a89d8fd351b10
-
failure log: https://treeherder.mozilla.org/logviewer?job_id=350070402&repo=autoland&lineNumber=2001
[task 2021-08-31T14:52:00.781Z] 14:52:00 INFO - TEST-START | org.mozilla.geckoview.test.AccessibilityTest#testLiveRegionImage
[task 2021-08-31T14:52:32.136Z] 14:52:32 INFO - org.mozilla.geckoview.test | INSTRUMENTATION_STATUS: numtests=796
[task 2021-08-31T14:52:32.136Z] 14:52:32 INFO - org.mozilla.geckoview.test | INSTRUMENTATION_STATUS: stream=
[task 2021-08-31T14:52:32.136Z] 14:52:32 INFO - org.mozilla.geckoview.test | Error in testLiveRegionImage(org.mozilla.geckoview.test.AccessibilityTest):
[task 2021-08-31T14:52:32.136Z] 14:52:32 INFO - org.mozilla.geckoview.test | org.mozilla.geckoview.test.util.UiThreadUtils$TimeoutException: Timed out after 30000ms
[task 2021-08-31T14:52:32.137Z] 14:52:32 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.util.UiThreadUtils$TimeoutRunnable.run(UiThreadUtils.java:50)
[task 2021-08-31T14:52:32.137Z] 14:52:32 INFO - org.mozilla.geckoview.test | at android.os.Handler.handleCallback(Handler.java:751)
[task 2021-08-31T14:52:32.137Z] 14:52:32 INFO - org.mozilla.geckoview.test | at android.os.Handler.dispatchMessage(Handler.java:95)
[task 2021-08-31T14:52:32.137Z] 14:52:32 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.util.UiThreadUtils.waitForCondition(UiThreadUtils.java:153)
[task 2021-08-31T14:52:32.137Z] 14:52:32 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.rule.GeckoSessionTestRule.evaluateJS(GeckoSessionTestRule.java:1901)
[task 2021-08-31T14:52:32.138Z] 14:52:32 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.BaseSessionTest.evaluateJS(BaseSessionTest.kt:188)
[task 2021-08-31T14:52:32.138Z] 14:52:32 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.AccessibilityTest.testLiveRegionImage(AccessibilityTest.kt:971)
[task 2021-08-31T14:52:32.138Z] 14:52:32 INFO - org.mozilla.geckoview.test | at java.lang.reflect.Method.invoke(Native Method)
[task 2021-08-31T14:52:32.138Z] 14:52:32 INFO - org.mozilla.geckoview.test | at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
[task 2021-08-31T14:52:32.138Z] 14:52:32 INFO - org.mozilla.geckoview.test | at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
[task 2021-08-31T14:52:32.139Z] 14:52:32 INFO - org.mozilla.geckoview.test | at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
[task 2021-08-31T14:52:32.139Z] 14:52:32 INFO - org.mozilla.geckoview.test | at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
[task 2021-08-31T14:52:32.139Z] 14:52:32 INFO - org.mozilla.geckoview.test | at androidx.test.internal.runner.junit4.statement.RunBefores.evaluate(RunBefores.java:80)
[task 2021-08-31T14:52:32.139Z] 14:52:32 INFO - org.mozilla.geckoview.test | at androidx.test.internal.runner.junit4.statement.RunAfters.evaluate(RunAfters.java:61)
[task 2021-08-31T14:52:32.140Z] 14:52:32 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.rule.GeckoSessionTestRule$2.lambda$evaluate$0$GeckoSessionTestRule$2(GeckoSessionTestRule.java:1315)
[task 2021-08-31T14:52:32.140Z] 14:52:32 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.rule.-$$Lambda$GeckoSessionTestRule$2$cmP_QJg-X16GIlt8KIQd32egmfU.run(lambda)
[task 2021-08-31T14:52:32.140Z] 14:52:32 INFO - org.mozilla.geckoview.test | at android.app.Instrumentation$SyncRunnable.run(Instrumentation.java:1950)
[task 2021-08-31T14:52:32.140Z] 14:52:32 INFO - org.mozilla.geckoview.test | at android.os.Handler.handleCallback(Handler.java:751)
[task 2021-08-31T14:52:32.140Z] 14:52:32 INFO - org.mozilla.geckoview.test | at android.os.Handler.dispatchMessage(Handler.java:95)
[task 2021-08-31T14:52:32.141Z] 14:52:32 INFO - org.mozilla.geckoview.test | at android.os.Looper.loop(Looper.java:154)
[task 2021-08-31T14:52:32.141Z] 14:52:32 INFO - org.mozilla.geckoview.test | at android.app.ActivityThread.main(ActivityThread.java:6077)
[task 2021-08-31T14:52:32.141Z] 14:52:32 INFO - org.mozilla.geckoview.test | at java.lang.reflect.Method.invoke(Native Method)
[task 2021-08-31T14:52:32.141Z] 14:52:32 INFO - org.mozilla.geckoview.test | at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:866)
[task 2021-08-31T14:52:32.141Z] 14:52:32 INFO - org.mozilla.geckoview.test | at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:756)
[task 2021-08-31T14:52:32.141Z] 14:52:32 INFO - org.mozilla.geckoview.test |
[task 2021-08-31T14:52:32.142Z] 14:52:32 INFO - org.mozilla.geckoview.test | INSTRUMENTATION_STATUS: id=AndroidJUnitRunner
[task 2021-08-31T14:52:32.142Z] 14:52:32 INFO - org.mozilla.geckoview.test | INSTRUMENTATION_STATUS: test=testLiveRegionImage
[task 2021-08-31T14:52:32.142Z] 14:52:32 INFO - org.mozilla.geckoview.test | INSTRUMENTATION_STATUS: class=org.mozilla.geckoview.test.AccessibilityTest
[task 2021-08-31T14:52:32.142Z] 14:52:32 INFO - org.mozilla.geckoview.test | INSTRUMENTATION_STATUS: stack=org.mozilla.geckoview.test.util.UiThreadUtils$TimeoutException: Timed out after 30000ms
[task 2021-08-31T14:52:32.143Z] 14:52:32 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.util.UiThreadUtils$TimeoutRunnable.run(UiThreadUtils.java:50)
[task 2021-08-31T14:52:32.143Z] 14:52:32 INFO - org.mozilla.geckoview.test | at android.os.Handler.handleCallback(Handler.java:751)
[task 2021-08-31T14:52:32.143Z] 14:52:32 INFO - org.mozilla.geckoview.test | at android.os.Handler.dispatchMessage(Handler.java:95)
[task 2021-08-31T14:52:32.143Z] 14:52:32 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.util.UiThreadUtils.waitForCondition(UiThreadUtils.java:153)
[task 2021-08-31T14:52:32.143Z] 14:52:32 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.rule.GeckoSessionTestRule.evaluateJS(GeckoSessionTestRule.java:1901)
[task 2021-08-31T14:52:32.144Z] 14:52:32 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.BaseSessionTest.evaluateJS(BaseSessionTest.kt:188)
[task 2021-08-31T14:52:32.144Z] 14:52:32 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.AccessibilityTest.testLiveRegionImage(AccessibilityTest.kt:971)
[task 2021-08-31T14:52:32.144Z] 14:52:32 INFO - org.mozilla.geckoview.test | at java.lang.reflect.Method.invoke(Native Method)
[task 2021-08-31T14:52:32.144Z] 14:52:32 INFO - org.mozilla.geckoview.test | at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
[task 2021-08-31T14:52:32.144Z] 14:52:32 INFO - org.mozilla.geckoview.test | at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
[task 2021-08-31T14:52:32.144Z] 14:52:32 INFO - org.mozilla.geckoview.test | at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
[task 2021-08-31T14:52:32.145Z] 14:52:32 INFO - org.mozilla.geckoview.test | at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
[task 2021-08-31T14:52:32.145Z] 14:52:32 INFO - org.mozilla.geckoview.test | at androidx.test.internal.runner.junit4.statement.RunBefores.evaluate(RunBefores.java:80)
[task 2021-08-31T14:52:32.145Z] 14:52:32 INFO - org.mozilla.geckoview.test | at androidx.test.internal.runner.junit4.statement.RunAfters.evaluate(RunAfters.java:61)
[task 2021-08-31T14:52:32.145Z] 14:52:32 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.rule.GeckoSessionTestRule$2.lambda$evaluate$0$GeckoSessionTestRule$2(GeckoSessionTestRule.java:1315)
[task 2021-08-31T14:52:32.145Z] 14:52:32 INFO - org.mozilla.geckoview.test | at org.mozilla.geckoview.test.rule.-$$Lambda$GeckoSessionTestRule$2$cmP_QJg-X16GIlt8KIQd32egmfU.run(lambda)
[task 2021-08-31T14:52:32.146Z] 14:52:32 INFO - org.mozilla.geckoview.test | at android.app.Instrumentation$SyncRunnable.run(Instrumentation.java:1950)
[task 2021-08-31T14:52:32.146Z] 14:52:32 INFO - org.mozilla.geckoview.test | at android.os.Handler.handleCallback(Handler.java:751)
[task 2021-08-31T14:52:32.146Z] 14:52:32 INFO - org.mozilla.geckoview.test | at android.os.Handler.dispatchMessage(Handler.java:95)
[task 2021-08-31T14:52:32.146Z] 14:52:32 INFO - org.mozilla.geckoview.test | at android.os.Looper.loop(Looper.java:154)
[task 2021-08-31T14:52:32.146Z] 14:52:32 INFO - org.mozilla.geckoview.test | at android.app.ActivityThread.main(ActivityThread.java:6077)
[task 2021-08-31T14:52:32.146Z] 14:52:32 INFO - org.mozilla.geckoview.test | at java.lang.reflect.Method.invoke(Native Method)
[task 2021-08-31T14:52:32.147Z] 14:52:32 INFO - org.mozilla.geckoview.test | at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:866)
[task 2021-08-31T14:52:32.147Z] 14:52:32 INFO - org.mozilla.geckoview.test | at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:756)
[task 2021-08-31T14:52:32.147Z] 14:52:32 INFO - org.mozilla.geckoview.test |
[task 2021-08-31T14:52:32.147Z] 14:52:32 INFO - org.mozilla.geckoview.test | INSTRUMENTATION_STATUS: current=1
[task 2021-08-31T14:52:32.147Z] 14:52:32 INFO - org.mozilla.geckoview.test | INSTRUMENTATION_STATUS_CODE: -2
[task 2021-08-31T14:52:32.147Z] 14:52:32 INFO - Printing logcat for test:
[task 2021-08-31T14:52:32.171Z] 14:52:32 INFO - 08-31 14:51:59.905 E/GeckoSessionTestRule( 3451): test_start 1f0befec-3ff2-40ff-89cf-b127eb38b1ec testLiveRegionImage(org.mozilla.geckoview.test.AccessibilityTest)
[task 2021-08-31T14:52:32.171Z] 14:52:32 INFO - 08-31 14:51:59.905 E/GeckoSessionTestRule( 3451): before prepareStatement testLiveRegionImage(org.mozilla.geckoview.test.AccessibilityTest)
[task 2021-08-31T14:52:32.171Z] 14:52:32 INFO - 08-31 14:51:59.907 D/GeckoThread( 3451): State changed to MOZGLUE_READY
[..]
[task 2021-08-31T14:52:32.204Z] 14:52:32 INFO - 08-31 14:52:31.227 E/GeckoSessionTestRule( 3451): Error
[task 2021-08-31T14:52:32.205Z] 14:52:32 INFO - 08-31 14:52:31.227 E/GeckoSessionTestRule( 3451): org.mozilla.geckoview.test.util.UiThreadUtils$TimeoutException: Timed out after 30000ms
[task 2021-08-31T14:52:32.205Z] 14:52:32 INFO - 08-31 14:52:31.227 E/GeckoSessionTestRule( 3451): at org.mozilla.geckoview.test.util.UiThreadUtils$TimeoutRunnable.run(UiThreadUtils.java:50)
[task 2021-08-31T14:52:32.205Z] 14:52:32 INFO - 08-31 14:52:31.227 E/GeckoSessionTestRule( 3451): at android.os.Handler.handleCallback(Handler.java:751)
[task 2021-08-31T14:52:32.205Z] 14:52:32 INFO - 08-31 14:52:31.227 E/GeckoSessionTestRule( 3451): at android.os.Handler.dispatchMessage(Handler.java:95)
[task 2021-08-31T14:52:32.205Z] 14:52:32 INFO - 08-31 14:52:31.227 E/GeckoSessionTestRule( 3451): at org.mozilla.geckoview.test.util.UiThreadUtils.waitForCondition(UiThreadUtils.java:153)
[task 2021-08-31T14:52:32.205Z] 14:52:32 INFO - 08-31 14:52:31.227 E/GeckoSessionTestRule( 3451): at org.mozilla.geckoview.test.rule.GeckoSessionTestRule.evaluateJS(GeckoSessionTestRule.java:1901)
[task 2021-08-31T14:52:32.205Z] 14:52:32 INFO - 08-31 14:52:31.227 E/GeckoSessionTestRule( 3451): at org.mozilla.geckoview.test.BaseSessionTest.evaluateJS(BaseSessionTest.kt:188)
[task 2021-08-31T14:52:32.205Z] 14:52:32 INFO - 08-31 14:52:31.227 E/GeckoSessionTestRule( 3451): at org.mozilla.geckoview.test.AccessibilityTest.testLiveRegionImage(AccessibilityTest.kt:971)
[task 2021-08-31T14:52:32.205Z] 14:52:32 INFO - 08-31 14:52:31.227 E/GeckoSessionTestRule( 3451): at java.lang.reflect.Method.invoke(Native Method)
[task 2021-08-31T14:52:32.206Z] 14:52:32 INFO - 08-31 14:52:31.227 E/GeckoSessionTestRule( 3451): at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
[task 2021-08-31T14:52:32.206Z] 14:52:32 INFO - 08-31 14:52:31.227 E/GeckoSessionTestRule( 3451): at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
[task 2021-08-31T14:52:32.206Z] 14:52:32 INFO - 08-31 14:52:31.227 E/GeckoSessionTestRule( 3451): at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
[task 2021-08-31T14:52:32.206Z] 14:52:32 INFO - 08-31 14:52:31.227 E/GeckoSessionTestRule( 3451): at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
[task 2021-08-31T14:52:32.206Z] 14:52:32 INFO - 08-31 14:52:31.227 E/GeckoSessionTestRule( 3451): at androidx.test.internal.runner.junit4.statement.RunBefores.evaluate(RunBefores.java:80)
[task 2021-08-31T14:52:32.206Z] 14:52:32 INFO - 08-31 14:52:31.227 E/GeckoSessionTestRule( 3451): at androidx.test.internal.runner.junit4.statement.RunAfters.evaluate(RunAfters.java:61)
[task 2021-08-31T14:52:32.206Z] 14:52:32 INFO - 08-31 14:52:31.227 E/GeckoSessionTestRule( 3451): at org.mozilla.geckoview.test.rule.GeckoSessionTestRule$2.lambda$evaluate$0$GeckoSessionTestRule$2(GeckoSessionTestRule.java:1315)
[task 2021-08-31T14:52:32.206Z] 14:52:32 INFO - 08-31 14:52:31.227 E/GeckoSessionTestRule( 3451): at org.mozilla.geckoview.test.rule.-$$Lambda$GeckoSessionTestRule$2$cmP_QJg-X16GIlt8KIQd32egmfU.run(lambda)
[task 2021-08-31T14:52:32.206Z] 14:52:32 INFO - 08-31 14:52:31.227 E/GeckoSessionTestRule( 3451): at android.app.Instrumentation$SyncRunnable.run(Instrumentation.java:1950)
[task 2021-08-31T14:52:32.206Z] 14:52:32 INFO - 08-31 14:52:31.227 E/GeckoSessionTestRule( 3451): at android.os.Handler.handleCallback(Handler.java:751)
[task 2021-08-31T14:52:32.207Z] 14:52:32 INFO - 08-31 14:52:31.227 E/GeckoSessionTestRule( 3451): at android.os.Handler.dispatchMessage(Handler.java:95)
[task 2021-08-31T14:52:32.207Z] 14:52:32 INFO - 08-31 14:52:31.227 E/GeckoSessionTestRule( 3451): at android.os.Looper.loop(Looper.java:154)
[task 2021-08-31T14:52:32.207Z] 14:52:32 INFO - 08-31 14:52:31.227 E/GeckoSessionTestRule( 3451): at android.app.ActivityThread.main(ActivityThread.java:6077)
[task 2021-08-31T14:52:32.207Z] 14:52:32 INFO - 08-31 14:52:31.227 E/GeckoSessionTestRule( 3451): at java.lang.reflect.Method.invoke(Native Method)
[task 2021-08-31T14:52:32.207Z] 14:52:32 INFO - 08-31 14:52:31.227 E/GeckoSessionTestRule( 3451): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:866)
[task 2021-08-31T14:52:32.207Z] 14:52:32 INFO - 08-31 14:52:31.227 E/GeckoSessionTestRule( 3451): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:756)
[task 2021-08-31T14:52:32.207Z] 14:52:32 INFO - 08-31 14:52:31.228 D/EGL_emulation( 3451): eglMakeCurrent: 0x7b648cbf6f20: ver 3 0 (tinfo 0x7b648cb05180)
[task 2021-08-31T14:52:32.207Z] 14:52:32 INFO - 08-31 14:52:31.229 D/ ( 3451): HostConnection::get() New Host Connection established 0x7b6484c30aa0, tid 3451
[task 2021-08-31T14:52:32.207Z] 14:52:32 INFO - 08-31 14:52:31.230 D/GeckoViewContent( 3451): handleEvent: DOMWindowClose
[task 2021-08-31T14:52:32.207Z] 14:52:32 INFO - 08-31 14:52:31.231 D/GeckoViewConsole( 3451): onEvent GeckoView:WebExtension:List null
[task 2021-08-31T14:52:32.207Z] 14:52:32 INFO - 08-31 14:52:31.239 E/GeckoSessionTestRule( 3451): test_end c5ee677f-bc83-49bd-9e28-2d35f3d0f059 testLiveRegionImage(org.mozilla.geckoview.test.AccessibilityTest)
[task 2021-08-31T14:52:32.207Z] 14:52:32 WARNING - TEST-UNEXPECTED-FAIL | org.mozilla.geckoview.test.AccessibilityTest#testLiveRegionImage | org.mozilla.geckoview.test.util.UiThreadUtils$TimeoutException: Timed out after 30000ms
[task 2021-08-31T14:52:32.207Z] 14:52:32 INFO - TEST-INFO took 31391ms
Updated•4 years ago
|
Comment 22•4 years ago
|
||
The regression is due to the internal format change of sender
.
GeckoViewConnection was passed sender
from the content originally, but it was replaced with the return value of getSender
:
- sender ->
this.getSender(context, sender)
: https://hg.mozilla.org/integration/autoland/rev/f966b7898d9f#l9.18 sender
originally had the extension ID as theextensionId
member (and the context ID as theid
member),
whereasgetSender()
returned an object with the extension ID asid
(and the context ID ascontextId
(which shouldn't be public, but it is - bug 1628178): https://hg.mozilla.org/integration/autoland/rev/f966b7898d9f#l9.41
The generated sender
is send to the Java part as the GeckoView:WebExtension:Message
at https://searchfox.org/mozilla-central/rev/ad2ffab089e4e0c0fe99a1a046ab2b1c45546bdb/mobile/android/modules/geckoview/GeckoViewWebExtension.jsm#261,264,270,274-275
The sender is used at the Java side at https://searchfox.org/mozilla-central/rev/ad2ffab089e4e0c0fe99a1a046ab2b1c45546bdb/mobile/android/geckoview/src/main/java/org/mozilla/geckoview/WebExtensionController.java#727-735
The extensionFromBundle
method reads the extension ID, expecting an extensionId
property at https://searchfox.org/mozilla-central/rev/ad2ffab089e4e0c0fe99a1a046ab2b1c45546bdb/mobile/android/geckoview/src/main/java/org/mozilla/geckoview/WebExtensionController.java#1232-1233
The "native messaging implementation also parses the sender
parameter (expecting envType
, url
and frameId
) at https://searchfox.org/mozilla-central/rev/ad2ffab089e4e0c0fe99a1a046ab2b1c45546bdb/mobile/android/geckoview/src/main/java/org/mozilla/geckoview/WebExtensionController.java#1065-1118
To fix this, make sure that all parts are consistent with each other:
- either by changing
extensionId
toid
at https://searchfox.org/mozilla-central/rev/ad2ffab089e4e0c0fe99a1a046ab2b1c45546bdb/mobile/android/geckoview/src/main/java/org/mozilla/geckoview/WebExtensionController.java#1232) - or to format the sender to generate the expected format
Comment 23•4 years ago
|
||
Comment 24•4 years ago
•
|
||
Backed out for causing failures on mochitest/test_ext_tabs_create.html. CLOSED TREE
Backout link : https://hg.mozilla.org/integration/autoland/rev/3277c086c499915c0aee1617426a392a3908a077
Push with failures : https://treeherder.mozilla.org/jobs?repo=autoland&selectedTaskRun=NKLYHMPfTKyYn-lvfZMeIA.0&resultStatus=testfailed%2Cbusted%2Cexception&revision=a269440d7e21e51d677fdb93cd6a50ed2a9cb8c5&searchStr=android
Link to failure log :
https://treeherder.mozilla.org/logviewer?job_id=350093266&repo=autoland&lineNumber=1924
https://treeherder.mozilla.org/logviewer?job_id=350091469&repo=autoland&lineNumber=2708
Assignee | ||
Comment 25•4 years ago
|
||
Comment 26•4 years ago
|
||
Comment 27•4 years ago
|
||
bugherder |
Assignee | ||
Comment 28•4 years ago
|
||
Updated•4 years ago
|
Comment 29•4 years ago
|
||
Comment 30•4 years ago
|
||
bugherder |
Comment 31•4 years ago
|
||
== Change summary for alert #31653 (as of Mon, 04 Oct 2021 04:46:18 GMT) ==
Improvements:
Ratio | Test | Platform | Options | Absolute values (old vs new) |
---|---|---|---|---|
4% | Base Content JS | windows10-64-2004-shippable-qr | 1,922,033.33 -> 1,842,554.67 | |
4% | Base Content JS | linux1804-64-shippable-qr | 1,915,621.33 -> 1,837,546.00 | |
4% | Base Content JS | macosx1015-64-shippable-qr | fission | 1,709,869.33 -> 1,640,480.00 |
4% | Base Content JS | windows10-64-2004-shippable-qr | fission | 1,714,817.33 -> 1,645,382.00 |
4% | Base Content JS | macosx1015-64-shippable-qr | 1,916,318.67 -> 1,840,208.00 | |
... | ... | ... | ... | ... |
3% | Base Content JS | windows10-64-2004-shippable-qr | 1,900,637.33 -> 1,842,741.33 |
For up to date results, see: https://treeherder.mozilla.org/perfherder/alerts?id=31653
Updated•4 years ago
|
Comment 32•4 years ago
|
||
Setting status-firefox94=affected because zombie says he is working on final part 4 this week and would like to uplift it to Beta 94.
Assignee | ||
Comment 33•4 years ago
|
||
Updated•4 years ago
|
Comment 34•4 years ago
|
||
Comment 35•4 years ago
|
||
bugherder |
Comment 36•4 years ago
|
||
== Change summary for alert #31815 (as of Tue, 12 Oct 2021 03:18:42 GMT) ==
Improvements:
Ratio | Test | Platform | Options | Absolute values (old vs new) |
---|---|---|---|---|
1% | Base Content JS | macosx1015-64-shippable-qr | fission | 1,645,072.00 -> 1,635,818.67 |
1% | Base Content JS | linux1804-64-shippable-qr | 1,845,872.00 -> 1,836,535.33 | |
1% | Base Content JS | macosx1015-64-shippable-qr | 1,848,896.00 -> 1,839,722.67 | |
1% | Base Content JS | windows10-64-2004-shippable-qr | 1,851,578.67 -> 1,842,320.00 | |
0.48% | Base Content JS | linux1804-64-shippable-qr | fission | 1,646,334.00 -> 1,638,357.33 |
0.47% | Base Content JS | windows10-64-2004-shippable-qr | fission | 1,650,016.00 -> 1,642,180.67 |
For up to date results, see: https://treeherder.mozilla.org/perfherder/alerts?id=31815
Assignee | ||
Comment 37•4 years ago
|
||
Potential regression from Part 4 in bug 1735347, though still not clear, waiting for reliable STR/verification.
Assignee | ||
Comment 38•4 years ago
|
||
Closing this as all planned parts landed. Will continue potential regression investigation in bug 1735347, and potential uplift based on that.
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Comment 39•4 years ago
|
||
Sorry, I realise this possibly isn't the right way to raise this. I'm sure someone will point me in the right direction if needs be.
This patch has impacted the functionality of Lastpass, it now appears blank in a private window - I narrowed the issue down using mozregression. Given that more than 680,000 Firefox users have Lastpass installed, and it is a "Recommended Extension", I believe this has a significant user impact. I have contacted Lastpass, including giving them the precise details of this patch, and they will not engage with me, they feel it is a Firefox issue.
Comment 40•4 years ago
|
||
(In reply to Patrick from comment #39)
Sorry, I realise this possibly isn't the right way to raise this. I'm sure someone will point me in the right direction if needs be.
This patch has impacted the functionality of Lastpass, it now appears blank in a private window - I narrowed the issue down using mozregression. Given that more than 680,000 Firefox users have Lastpass installed, and it is a "Recommended Extension", I believe this has a significant user impact. I have contacted Lastpass, including giving them the precise details of this patch, and they will not engage with me, they feel it is a Firefox issue.
I just installed LastPass in a new Firefox profile, granted access to Private Browsing mode, and clicked on the LastPass button. The panel is not blank. If you are consistently able to reproduce this bug, could you file a new bug with the reproduction steps? A video with reproduction steps may also help.
Description
•