Firefox does something so that Instantbird cannot be opened

RESOLVED WORKSFORME

Status

()

Firefox
General
--
critical
RESOLVED WORKSFORME
8 years ago
8 years ago

People

(Reporter: nicksu, Unassigned)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: [nv])

Attachments

(1 attachment)

(Reporter)

Description

8 years ago
User-Agent:       Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; WPS; GTB6; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; eSobiSubscriber 2.0.4.16; .NET CLR 3.5.30729; .NET CLR 3.0.30618)
Build Identifier: Mozilla/5.0 WinCE6.0 rv1.9.2a1pre Gecko/20090827 Firefox/3.6a1pre

Firefox will auto open 2 tasks (to speed up launch maybe)
after systemboot up.
You can see 2 tasks in task mgr (see pic1.jpg)
They will let Instantbird cannot be opend.

Reproducible: Always

Steps to Reproduce:

1.Install firefox and instantbird(Mozilla/5.0 WinCE6.0 rv1.9.2a1pre Gecko/20090724 InstantBird/0.2b1pre)
2.Restart you system
3.After boot up, wait about 1 min and open tassk manager(Ctrl+Alt+Del), you can see 2 tasks auto run.(see pic1.jpg)
4.Launch InstantBird, it cannot be opened

If you kill these 2 tasks, then it can be opened

3.
Actual Results:  
Launch InstantBird, it cannot be opened


Expected Results:  
InstantBird should be opened normally
(Reporter)

Comment 1

8 years ago
Created attachment 400413 [details]
Tasks in Task Mgr

2 Tasks auto run
Whiteboard: [nv]
Related to Bug 491515? I haven't yet been able to get Instabird to run on the latest OS. The program launches but then you cannot seen any screen names.
(Reporter)

Comment 3

8 years ago
Not Exactly.
I try again:
1.Launch InstantBird first, Firefox cannot opened.
2.Launch Firefox first, InstantBird cannot opened.

Comment 4

8 years ago
When I tried with latest image, Instandbird was not opening.
However, opening Firefox after that works fine, no issue
This is likely a problem with InstantBird, not with Firefox, maybe to do with how they run XULRunner? Florian?
Windows CE has a limitation that it only loads DLLs by name, ignoring the path name -- so both instantbird and firefox have "xul.dll".  Whichever one is executed first will load its xul.dll, and the next app launch will use its xul.dll.  If the fast startup stuff is being used, then in general firefox will always get the xul.dll slot reserved... unless instantbird is also launching at startup, before the faststart firefox component gets launched.

I have no idea what the xul.dll (and other gecko platform DLLs are) that comes from instantbird is, but it's unlikely to be the same as what we're providing in the official binary builds.  Having either app pick up the wrong DLLs will likely lead to all sorts of instability and strange behaviour.
The gecko platform DLLs that Instantbird uses are compiled from the 1.9.2 branch, with only 2 minor modifications:
 - a fix for strftime, no longer needed since bug 503710 is fixed.
 - a fix for errno. I guess I should clean it up and attach it in bugzilla for review... or find another way to work around the issue.

Do you think it will 'magically' fix this bug if we use an unmodified gecko?
Note that it's not just unmodified, they'd need to basically come from the same Hg version to ensure they're actually the same (and compiled the same way, etc etc). Who knows if there are any other weird WinCE things that might still cause problems. You could experiment with copying all the Firefox libraries into your appdir, making sure Instantbird still works by itself, and then see if it works after FF is launched first.

Though this will still be a huge pain for upgrades, because you'd have to stay in sync with Firefox minor updates.
(In reply to comment #8)

> Though this will still be a huge pain for upgrades, because you'd have to stay
> in sync with Firefox minor updates.

Aren't minor updates binary compatible, so that extensions with binary XPCOM components don't break?
That's the goal, but if security issues require breaking compat, it's been done. And there can be dependencies between browser chrome code (XUL/JS) and new interfaces/behaviors. Not to mention that it would be bad for someone running the latest Firefox to be exposed to security vulnerabilities because it's actually using an older xul.dll from InstantBird.

In short, even if you can get things to work it's not a solution I'd recommend.
...instead, maybe modify your build to package and use s/(.+)\.dll/ib-$1.dll/? Giving the libraries a unique name would avoid the problem.
Summary: Firefox does something let Instantbird cannot be opend → Firefox does something so that Instantbird cannot be opened
Instantbird is no longer on the OS image I am using - can we resolve this bug as invalid?
Yeah, AFAIK InstantBird is no longer included (since it's not been in recent OS builds).
Status: UNCONFIRMED → RESOLVED
Last Resolved: 8 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.