Closed Bug 1667294 Opened 4 years ago Closed 4 years ago

TB E10s goal 1: get a webpage loading in the message pane

Categories

(Thunderbird :: General, task)

Tracking

(thunderbird_esr78 unaffected)

RESOLVED FIXED
86 Branch
Tracking Status
thunderbird_esr78 --- unaffected

People

(Reporter: darktrojan, Assigned: darktrojan)

References

Details

Attachments

(2 files)

I'm trying to do the most basic thing an E10s-enabled Thunderbird should be able to do – load a web page.

The aim is to start the program, open the devtools, and run this without crashing:

document.getElementById("messagepane").loadURI("https://www.example.com/")

From bug 1646648 comment 3:

Current status: I'm trying to get a page to load in the message pane, but it crashes. I've traced the problem back to here – I don't know why the pipe is closed, or even what pipe we're talking about. There's also a problem here where sharedData doesn't have a lot of the things I expect it should have, including ChildSingletonActors. This could be related to the first problem, I don't know.

I'm not sure if it helps any, but these are the processes that run (paths shortened for readability):

1149489 objdir/dist/bin/thunderbird --purgecaches -no-remote -profile objdir/tmp/profile-default
1149595 objdir/dist/bin/thunderbird -contentproc -childID 1 -isForBrowser -prefsLen 1 -prefMapSize 223621 -parentBuildID 20200925140353 -appdir objdir/dist/bin 1149489 false tab
1149685 objdir/dist/bin/thunderbird -contentproc -childID 2 -isForBrowser -prefsLen 1470 -prefMapSize 223621 -parentBuildID 20200925140353 -appdir objdir/dist/bin 1149489 false tab

-prefsLen 1 seems a bit wrong.

CC'ing the IPC module folks in the hope they can help.

That case in ipc_channel_posix.cc handles end-of-file on the socketpair underlying the channel. Typically that means the other process crashed, but for a channel opened by passing an Endpoint object (rather than a child process's initial channel) it could be the result of the Endpoint being dropped in some error case. But I don't know how that would connect to any high-level things that TB might be doing / not doing.

Nika, do you have any insight about this from the DOM side?

Flags: needinfo?(nika)

Perhaps what I'm looking at isn't the initial problem but a symptom, and something happens earlier causing a crash.

  1. Is "messgepane" hardcoded anywhere for different treatment.
  2. Does anything work in a content tab <browser> (not a messagepane).

Yeah, I'm guessing the content process is aborting early during startup for some reason, which could lead to an error being produced in that code. Perhaps try recording the execution under rr to see what's happening in the content process.

Flags: needinfo?(nika)

I have succeeded! Things were starting up in the child process that shouldn't have been, and this was causing assertion failures.

Assignee: nobody → geoff
Status: NEW → ASSIGNED
Blocks: 1668432
Attachment #9177799 - Attachment description: Bug 1667294 - TB E10s goal 1: get a webpage loading in the message pane → Bug 1667294 - Allow loading of web pages in remote browsers.
Attachment #9177799 - Attachment description: Bug 1667294 - Allow loading of web pages in remote browsers. → Bug 1667294 - Allow loading of web pages in remote browsers. r?mkmelin
Keywords: leave-open
Pushed by geoff@darktrojan.net: https://hg.mozilla.org/integration/autoland/rev/3d16e9465118 Skip parts of SandboxBroker::LaunchApp when launching a Thunderbird process. r=tkikuchi
Pushed by geoff@darktrojan.net: https://hg.mozilla.org/comm-central/rev/fb0e4da49a0b Allow loading of web pages in remote browsers. r=mkmelin
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Keywords: leave-open
Resolution: --- → FIXED
Target Milestone: --- → 86 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: