diff --git a/mozilla/js/src/xpconnect/loader/mozJSComponentLoader.cpp b/mozilla/js/src/xpconnect/loader/mozJSComponentLoader.cpp index cde21e87110..80448823b4d 100644 --- a/mozilla/js/src/xpconnect/loader/mozJSComponentLoader.cpp +++ b/mozilla/js/src/xpconnect/loader/mozJSComponentLoader.cpp @@ -425,7 +425,8 @@ mozJSComponentLoader::AutoRegisterComponent(PRInt32 when, module = ModuleForLocation(registryLocation, component); - rv = module->RegisterSelf(mCompMgr, component, registryLocation); + rv = module->RegisterSelf(mCompMgr, component, registryLocation, + jsComponentTypeName); if (NS_FAILED(rv)) { fprintf(stderr, "module->RegisterSelf failed(%x)\n", rv); goto out; diff --git a/mozilla/modules/libimg/gifcom/nsGIFModule.cpp b/mozilla/modules/libimg/gifcom/nsGIFModule.cpp index 0b3cb5d06e2..38ba14b54ac 100644 --- a/mozilla/modules/libimg/gifcom/nsGIFModule.cpp +++ b/mozilla/modules/libimg/gifcom/nsGIFModule.cpp @@ -165,7 +165,8 @@ nsGIFModule::GetClassObject(nsIComponentManager *aCompMgr, const nsCID & aClass, NS_IMETHODIMP nsGIFModule::RegisterSelf(nsIComponentManager *aCompMgr, nsIFileSpec *location, - const char *registryLocation) + const char *registryLocation, + const char *componentType) { nsresult rv; rv = aCompMgr->RegisterComponentSpec(kGIFDecoderCID, diff --git a/mozilla/xpcom/components/nsComponentManagerUtils.h b/mozilla/xpcom/components/nsComponentManagerUtils.h index f7573173651..c1148486efa 100644 --- a/mozilla/xpcom/components/nsComponentManagerUtils.h +++ b/mozilla/xpcom/components/nsComponentManagerUtils.h @@ -176,5 +176,6 @@ extern const char xpcomBaseName[]; extern const char xpcomKeyName[]; extern const char lastModValueName[]; extern const char fileSizeValueName[]; +extern const char nativeComponentType[]; #endif /* nsComponentManagerUtils_h__ */ diff --git a/mozilla/xpcom/components/nsIModule.idl b/mozilla/xpcom/components/nsIModule.idl index 676070bfcdf..4cbbf2fd958 100644 --- a/mozilla/xpcom/components/nsIModule.idl +++ b/mozilla/xpcom/components/nsIModule.idl @@ -35,7 +35,8 @@ interface nsIModule : nsISupports // Component registration void RegisterSelf(in nsIComponentManager aCompMgr, in nsIFileSpec location, - in string registryLocation); + in string registryLocation, in string componentType); + void UnregisterSelf(in nsIComponentManager aCompMgr, in nsIFileSpec location, in string registryLocation); diff --git a/mozilla/xpcom/components/nsNativeComponentLoader.cpp b/mozilla/xpcom/components/nsNativeComponentLoader.cpp index 7cd4ace4624..1cd35148994 100644 --- a/mozilla/xpcom/components/nsNativeComponentLoader.cpp +++ b/mozilla/xpcom/components/nsNativeComponentLoader.cpp @@ -462,7 +462,8 @@ nsNativeComponentLoader::SelfRegisterDll(nsDll *dll, const char *registryLocatio nsCOMPtr fs; res = dll->GetDllSpec(getter_AddRefs(fs)); if (NS_SUCCEEDED(res)) - res = mobj->RegisterSelf(mCompMgr, fs, registryLocation); + res = mobj->RegisterSelf(mCompMgr, fs, registryLocation, + nativeComponentType); else { PR_LOG(nsComponentManagerLog, PR_LOG_ERROR, diff --git a/mozilla/xpcom/glue/nsComponentManagerUtils.h b/mozilla/xpcom/glue/nsComponentManagerUtils.h index f7573173651..c1148486efa 100644 --- a/mozilla/xpcom/glue/nsComponentManagerUtils.h +++ b/mozilla/xpcom/glue/nsComponentManagerUtils.h @@ -176,5 +176,6 @@ extern const char xpcomBaseName[]; extern const char xpcomKeyName[]; extern const char lastModValueName[]; extern const char fileSizeValueName[]; +extern const char nativeComponentType[]; #endif /* nsComponentManagerUtils_h__ */