Closed Bug 1013307 Opened 7 years ago Closed 6 years ago

Shutdown error: illegal operation

Categories

(Instantbird :: Other, defect)

x86
macOS
defect
Not set
minor

Tracking

(Not tracked)

RESOLVED FIXED
Instantbird 43

People

(Reporter: aleth, Assigned: aleth)

Details

Attachments

(1 file, 1 obsolete file)

* Call to xpconnect wrapped JSObject produced this error:  *
[Exception... "Component returned failure code: 0x8046001e [nsIWindowWatcher.openWindow]"  nsresult: "0x8046001e (<unknown>)"  location: "JS frame :: resource:///modules/ibCore.jsm :: Core.showWindow :: line 143"  data: no]

"NS_ERROR_ILLEGAL_DURING_SHUTDOWN (0x8046001E)
    Many operations cannot be performed once the application is being shutdown. This error will occur in this situation."
Are there STR? Is this really a blocker?
(In reply to Patrick Cloke [:clokep] from comment #1)
> Are there STR? Is this really a blocker?

I saw a similar error at more or less every shutdown of my debug build for months. I haven't checked recently if I still see it. I don't think it blocks.
Whiteboard: [1.6-blocking]
Attached patch shutdownopenwindow.diff (obsolete) — Splinter Review
Found this old fix sitting in the mq
Attachment #8646575 - Flags: review?(clokep)
Severity: normal → minor
Could we instead make _showAccountManagerIfNeeded return early if imServices.core.initialized is false?
(In reply to Florian Quèze [:florian] [:flo] from comment #4)
> Could we instead make _showAccountManagerIfNeeded return early if
> imServices.core.initialized is false?

That'll only work if initialized is unset before all the accounts etc are uninited and not after (as is the case now). I don't know whether that would have side effects or not.
Attachment #8646575 - Flags: review?(clokep) → review?(florian)
Comment on attachment 8646575 [details] [diff] [review]
shutdownopenwindow.diff

Review of attachment 8646575 [details] [diff] [review]:
-----------------------------------------------------------------

::: im/modules/ibCore.jsm
@@ +292,5 @@
>        this._onQuitRequest(aSubject, aData);
>        return;
>      }
> +
> +    if (aTopic == "prpl-quit") {

Could we do this during "quit-application-granted" instead?
Attachment #8646575 - Flags: review?(florian)
(In reply to Florian Quèze [:florian] [:flo] from comment #6)
> > +    if (aTopic == "prpl-quit") {
> 
> Could we do this during "quit-application-granted" instead?

I should think so, but why?
Nothing currently observes that apart from the listener that calls quit().
At some point, the core service was designed/tested so that we could do .init() then .quit() and then .init() again. I think the goal of doing that was for test purposes, but it may also be helpful to install/uninstall prpl add-ons.

After quit-application-granted, we are sure the process will be terminated, so doing irreversible changes to functions doesn't matter.
I'm not sure I'd trust this feature right now, but let's not break it further ;)
Attachment #8646575 - Attachment is obsolete: true
Attachment #8646917 - Flags: review?(florian)
Comment on attachment 8646917 [details] [diff] [review]
shutdownopenwindow.diff v2

Review of attachment 8646917 [details] [diff] [review]:
-----------------------------------------------------------------

Thanks!

(In reply to aleth [:aleth] from comment #9)

> I'm not sure I'd trust this feature right now, but let's not break it
> further ;)

Yeah, I wouldn't bet either on it being in working conditions right now.
Attachment #8646917 - Flags: review?(florian) → review+
Keywords: checkin-needed
url:        https://hg.mozilla.org/comm-central/rev/639709ee79764cd725fb10ebecb41f1cd5547141
changeset:  639709ee79764cd725fb10ebecb41f1cd5547141
user:       aleth <aleth@instantbird.org>
date:       Wed Aug 12 19:31:52 2015 +0200
description:
Bug 1013307 - Don't try to open account manager at shutdown. r=florian
Assignee: nobody → aleth
Status: NEW → RESOLVED
Closed: 6 years ago
Keywords: checkin-needed
Resolution: --- → FIXED
Target Milestone: --- → Instantbird 43
You need to log in before you can comment on or make changes to this bug.