Closed
Bug 1467720
Opened 7 years ago
Closed 7 years ago
Can't access dead object in ext-storage.js:168:40
Categories
(WebExtensions :: Storage, defect, P1)
Tracking
(firefox-esr52 unaffected, firefox-esr60 unaffected, firefox60 unaffected, firefox61 unaffected, firefox62 verified)
VERIFIED
FIXED
mozilla62
Tracking | Status | |
---|---|---|
firefox-esr52 | --- | unaffected |
firefox-esr60 | --- | unaffected |
firefox60 | --- | unaffected |
firefox61 | --- | unaffected |
firefox62 | --- | verified |
People
(Reporter: damien, Assigned: rpl)
References
Details
(Keywords: regression)
Attachments
(3 files)
13.45 KB,
text/x-log
|
Details | |
Bug 1467720 - Fix "dead object" error raised from ext-storage.js on browser.storage.local API calls.
59 bytes,
text/x-review-board-request
|
aswan
:
review+
|
Details |
133.86 KB,
image/jpeg
|
Details |
User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:62.0) Gecko/20100101 Firefox/62.0
Build ID: 20180607220114
Steps to reproduce:
- Install passwe addon and app
- open a webpage
- open passwe popup once and choose an entry (it works)
- open passwe popup again
Actual results:
You get "Loading password..." message and nothing happens
Expected results:
You get a list of password entries
Reporter | ||
Updated•7 years ago
|
Has Regression Range: --- → yes
Component: Untriaged → WebExtensions: Storage
Keywords: regression
OS: Unspecified → Linux
Product: Firefox → Toolkit
Hardware: Unspecified → x86_64
See Also: → 1406181
Version: Trunk → 62 Branch
Reporter | ||
Comment 1•7 years ago
|
||
mozregression tells me it is because of https://hg.mozilla.org/integration/autoland/pushloghtml?fromchange=885590b1dbd248556b995dfdfab36cf34ead5556&tochange=de1544d92b89fdf13f89d28cb9c8b6b4b2bfbd90.
Reporter | ||
Comment 2•7 years ago
|
||
The source code for passwe is hosted at https://gitlab.petton.fr/passwe/passwe-addon.
Comment hidden (mozreview-request) |
Assignee | ||
Updated•7 years ago
|
Assignee: nobody → lgreco
Blocks: 1406181
Status: UNCONFIRMED → ASSIGNED
Ever confirmed: true
Priority: -- → P1
Comment 5•7 years ago
|
||
mozreview-review |
Comment on attachment 8984386 [details]
Bug 1467720 - Fix "dead object" error raised from ext-storage.js on browser.storage.local API calls.
https://reviewboard.mozilla.org/r/250210/#review256766
::: toolkit/components/extensions/ExtensionStorageIDB.jsm:371
(Diff revision 1)
> if (context.childManager) {
> + // Create a promise object that is not tied to the current extension context, because
> + // we are caching it for the entire life of the extension in the current process (and
> + // the promise returned by context.childManager.callParentAsyncFunction would become
> + // a dead object when the context.cloneScope has been destroyed).
> + promise = new Promise(async (resolve, reject) => {
I think this could be simplified a bit without needing new Promise(). e.g
```
promise = (async () {
let result = await ...callParent(...);
if (result.backendEnabled) {
return { ...result, storagePrincipal: ...};
} else {
return {backendEnabled: false};
}
})();
```
Comment hidden (mozreview-request) |
Assignee | ||
Comment 7•7 years ago
|
||
mozreview-review-reply |
Comment on attachment 8984386 [details]
Bug 1467720 - Fix "dead object" error raised from ext-storage.js on browser.storage.local API calls.
https://reviewboard.mozilla.org/r/250210/#review256766
> I think this could be simplified a bit without needing new Promise(). e.g
> ```
> promise = (async () {
> let result = await ...callParent(...);
> if (result.backendEnabled) {
> return { ...result, storagePrincipal: ...};
> } else {
> return {backendEnabled: false};
> }
> })();
> ```
yeah, they do basically the same thing, but using the async function makes it simpler and it also looks better.
change applied!
Comment 8•7 years ago
|
||
mozreview-review |
Comment on attachment 8984386 [details]
Bug 1467720 - Fix "dead object" error raised from ext-storage.js on browser.storage.local API calls.
https://reviewboard.mozilla.org/r/250210/#review256852
Attachment #8984386 -
Flags: review?(aswan) → review+
Pushed by luca.greco@alcacoop.it:
https://hg.mozilla.org/integration/autoland/rev/c6d2c3390c0b
Fix "dead object" error raised from ext-storage.js on browser.storage.local API calls. r=aswan
Comment 10•7 years ago
|
||
bugherder |
Status: ASSIGNED → RESOLVED
Closed: 7 years ago
status-firefox62:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla62
Updated•7 years ago
|
status-firefox60:
--- → unaffected
status-firefox61:
--- → unaffected
status-firefox-esr52:
--- → unaffected
status-firefox-esr60:
--- → unaffected
Comment 11•7 years ago
|
||
I've tried to reproduce the issue using a fresh profile on the latest nightly build but opened the pop-up and it's stuck loading with the message "Loading passwords...", I think this might be an extension related issue, can you please take a look?
Tested on Windows 10 64Bit in Firefox 62.0a1 (20180618100844).
Attached screenshot.
Flags: needinfo?(damien)
Reporter | ||
Comment 12•7 years ago
|
||
> it's stuck loading with the message "Loading passwords..."
the add-on requires an external app (https://gitlab.petton.fr/passwe/passwe-app) as well as a password-store directory.
> can you please take a look?
for me, the bug reported here has been fixed for a few days. I can successfully use my add-on again.
Thanks
Flags: needinfo?(damien)
Comment 13•7 years ago
|
||
Marking as verified as per https://bugzilla.mozilla.org/show_bug.cgi?id=1467720#c12.
Status: RESOLVED → VERIFIED
Updated•7 years ago
|
Product: Toolkit → WebExtensions
You need to log in
before you can comment on or make changes to this bug.
Description
•