Closed Bug 153183 Opened 23 years ago Closed 23 years ago

regxpcom does not create component.reg if components/compreg.dat is up-to-date.

Categories

(Core :: XPCOM, defect)

x86
Linux
defect
Not set
normal

Tracking

()

RESOLVED INVALID

People

(Reporter: mozilla-bugs, Assigned: dougt)

Details

(Keywords: regression)

Reproducible: always To reporduce: 1) run regxpcom 2) rm component.reg 3) run regxpcom again Expected: component.reg re-created Actual: It's still missing. Only if in step 2 I remove both component.reg and components/compreg.dat, then regxpcom re-creates both. Among other things this creates problems with RPMs that where rebuild-databases.pl deletes component.reg before running regxpcom.
I do not think this problem existed with BuildID 2002061018 (trunk), but it appeared in BuildID 2002061717 (trunk).
Keywords: regression
This is invalid. See 48888. The component.reg file, dispite its name, has nothing to do with xpcom component registration. Components such as intl, profiles, and xpinstall, put their data into this file going through nsIRegistry, but this has nothing to do with autoregistration. Clearly, the workaround is to now delete both files before calling regxpcom. Please note, if 48888 ever lands on the mozilla 1.0x branch, you will have to delete both files there too.
Status: NEW → RESOLVED
Closed: 23 years ago
Resolution: --- → INVALID
Well, still this seems like a bug - if regxpcom is the primary (and only) way to create that file and if the file is necessary for something, then IMHO regxpcom should create the file consistently, even if it's not regxpcom's primary goal. P.S. Also, when the file is not there, Mozilla will crash on "View -> Charset" (just building the menu!) - bug 152545.
what can you really do, Aleksey? component.reg is a backend store which is created via components which regxpcom knows *nothing* about. Eventually, alecf and I will remove the need for the component.reg by converting these callers to use something else (and thereby remove libreg). Until then, use the work around. If you have any suggestion on to do this properly, I am all ears.
I just looked at /usr/lib/mozilla/rebuild-databases.sh which deletes /usr/lib/mozilla/component.reg, but not /usr/lib/mozilla/components/compreg.dat. IOW: This thing is useless? pi
Boris, do you have Mozilla installed from an RPM? Who built it? You should probably let them know that they need to fix rebuild-databases.sh to remove components/compreg.dat as well. And somebody (blizzard?) needs to fix the build/packages/rpm/SOURCES/rebuild-databases.sh in Mozilla CVS (BTW, why is it still there? I though modern RPMs had mozilla-rebuild-databases.pl in them.).
Well, actually, my admin builds his own RPM from source since it is usually not available for RedHat 6.0. Fixing this by hand does the job. rebuild-databases.sh really has to be fixed. pi
I'll check the changes into cvs soonish. I've updated the rebuild scripts.
Component: XPCOM Registry → XPCOM
QA Contact: doug.turner → xpcom
You need to log in before you can comment on or make changes to this bug.