Closed Bug 589992 Opened 14 years ago Closed 14 years ago

Having components more than once in a *.manifest crashes Firefox [@ nsComponentManagerImpl::KnownModule::Description]

Categories

(Core :: XPCOM, defect)

x86_64
Linux
defect
Not set
critical

Tracking

()

VERIFIED DUPLICATE of bug 616056

People

(Reporter: imphil, Unassigned)

Details

(Keywords: crash)

Crash Data

Attachments

(2 files)

The recent changes of always auto-generating components.manifest/interfaces.manifest files and including them in the chrome.manifest file have led to the situation that xforms defined its components once in the chrome.manifest and once in the components/components.manifest. This causes Firefox to crash on startup with the attached backtrace. Unfortunately I couldn't think of an possibility to reproduce this bug without XForms (even though its not xforms specific, it should be present with every extension that uses manifests). The xforms code is a bit hard to build ATM due to various core changes, so I attached a bash script that downloads and patches all components to make reproducing this bug easier. It's attached as reproduce-manifest-bug.sh To reproduce this bug: ./reproduce-manifest-bug.sh cd manifest-bug/mozilla-central MOZCONFIG=../mozconfig make -f client.mk build Then simply start firefox and it should crash. The first couple "Re-registering a CID" messages are harmless (libschemavalidation.so is found twice due to some build wiredness)
Attached file backtrace
Program received signal SIGSEGV, Segmentation fault. 0x00007ffff6eb3957 in nsComponentManagerImpl::KnownModule::Description (this=0x7fffdc7665e0) at /home/philipp/src/manifest-bug/mozilla-central/xpcom/components/nsComponentManager.cpp:961 961 mFile->GetNativePath(s); (gdb) p mFile $1 = {mRawPtr = 0x5a5a5a5a5a5a5a5a} nsComponentManagerImpl::KnownModule::Description nsComponentManagerImpl::RegisterCIDEntry idstr = "{c068f682-03b5-4e96-81e1-6013f91288b2}" existing = ... nsComponentManagerImpl::RegisterModule nsComponentManagerImpl::ManifestBinaryComponent file = 0x7fffdc78c55b "components/libxforms.so" ParseManifestCommon argv = {0x7fffdc78c55b "components/libxforms.so", 0x7fffdc78c4fb "nsSchemaValidatorRegexp", 0x7fffdc78c513 "@mozilla.org/xmlextras/schemas/schemavalidatorregexp;1", 0x7fffffffc860 "x86_64-gcc3"} ParseManifest type=NS_COMPONENT_LOCATION buf=0x7fffdc78c400 "skin" aChromeOnly=false
Severity: normal → critical
Keywords: crash
Summary: Having components more than once in a *.manifest crashes Firefox → Having components more than once in a *.manifest crashes Firefox [@ nsComponentManagerImpl::KnownModule::Description]
Status: NEW → RESOLVED
Closed: 14 years ago
Resolution: --- → DUPLICATE
Status: RESOLVED → VERIFIED
Crash Signature: [@ nsComponentManagerImpl::KnownModule::Description]
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: