Closed Bug 291162 Opened 19 years ago Closed 3 years ago

firefox -register segfaults if $HOME is unset

Categories

(Core :: XPCOM, defect)

x86
Linux
defect
Not set
critical

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: iainr, Unassigned)

References

Details

(Keywords: crash, sec-other, Whiteboard: [ccbr][sg:nse])

User-Agent:       Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.7) Gecko/20050420 Firefox/1.0.3 Fedora/1.0.3-1.3.1.ed.3
Build Identifier: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.7) Gecko/20050420 Firefox/1.0.3 Fedora/1.0.3-1.3.1.ed.3

If $HOME isn't set and firefox -register is run firefox will segfault 

Reproducible: Always

Steps to Reproduce:
1.unset HOME
2. run firefox -register
3.

Actual Results:  
[leuchars]iainr: unset HOME
[leuchars]iainr: firefox -register
/usr/lib/firefox-1.0.3/run-mozilla.sh: line 159: 15119 Segmentation fault     
"$prog" ${1+"$@"}
[leuchars]iainr: export HOME=/home/iainr
[leuchars]iainr: firefox -register
[leuchars]iainr:

Expected Results:  
It should fail gracefully with a reasonable error message

I came across this because we build our own firefox rpms and the tool we use to
keep our workstations up to date runs in a restricted environment. The rpms were
failing to install properly because firefox segfaulted in the %post script.

There's a simple workaround, set HOME to some sane value in the %post script but
it would be nice if firefox folded gracefully.
Support for -register will be removed in bug 286034, so this might become
irrelevant after that bug is fixed.
Depends on: eminstall
Summary: firefox-register segfaults if $HOME is unset → firefox -register segfaults if $HOME is unset
Oops. Disregard my previous comment.

Can you reproduce this with a recent-trunk build.
No longer depends on: eminstall
We see 3 Segmentation violations when installing firefox (1.0.4) with HOME not set.

These are:

- in regxpcom, right after an attempt to open compreg.dat
- in regchrome, right after an attempt to open compreg.dat
- in firefox-bin, right after an attempt to open components.ini

It does not matter what HOME is set to, AnyFunnyValue does it, even if that path
does not exist.
This is an automated message, with ID "auto-resolve01".

This bug has had no comments for a long time. Statistically, we have found that
bug reports that have not been confirmed by a second user after three months are
highly unlikely to be the source of a fix to the code.

While your input is very important to us, our resources are limited and so we
are asking for your help in focussing our efforts. If you can still reproduce
this problem in the latest version of the product (see below for how to obtain a
copy) or, for feature requests, if it's not present in the latest version and
you still believe we should implement it, please visit the URL of this bug
(given at the top of this mail) and add a comment to that effect, giving more
reproduction information if you have it.

If it is not a problem any longer, you need take no action. If this bug is not
changed in any way in the next two weeks, it will be automatically resolved.
Thank you for your help in this matter.

The latest beta releases can be obtained from:
Firefox:     http://www.mozilla.org/projects/firefox/
Thunderbird: http://www.mozilla.org/products/thunderbird/releases/1.5beta1.html
Seamonkey:   http://www.mozilla.org/projects/seamonkey/
This is still an issue for firefox-1.0.7:
~$ rpm -q firefox
firefox-1.0.7-1.4.1
~$ ( unset HOME; firefox -register )
/usr/lib/firefox-1.0.7/run-mozilla.sh: line 159: 28599 Segmentation fault     
(core dumped) "$prog" ${1+"$@"}
I experienced the same problem running mozilla-1.7.12-1.3.1 u nder FC3. Home not set it seg faults.
is it stil a problem with Firefox 1.5 ?
No idea whether this still is an issue with 1.5, since I have not yet seen a 1.5 rpm.
Assignee: bugs → nobody
Component: Extension/Theme Manager → XRE Startup
Product: Firefox → Toolkit
QA Contact: bugs → xre.startup
I think this is because xpcom/io/SpecialSystemDirectory.cpp and xpcom/io/nsAppFileLocationProvider.cpp have code like this:
  ... nsDependentCString(PR_GetEnv("HOME"))...
which will of course segfault if HOME isn't defined (== nsnull).

-> XPCOM ?
Severity: normal → critical
Component: XRE Startup → XPCOM
Keywords: crash
Product: Toolkit → Core
QA Contact: xre.startup → xpcom
Is this still an issue in Firefox 3.5?  If it is not, we should set the resolution to WORKSFORME.
It still is on 3.5.1. (just tried)
Status: UNCONFIRMED → NEW
Ever confirmed: true
Whiteboard: [ccbr]
Depends on: 368477
Whiteboard: [ccbr] → [ccbr][sg:nse]

It sounds like this issue was fixed by bug 368477.

Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.