Benjamin Smedberg
0503e044c7
Fix omnijar from bug 579178 - move the manifest ziploader code into xpcom/components, and don't load the same JAR a bunch of times.
...
--HG--
rename : modules/libjar/nsManifestZIPLoader.cpp => xpcom/components/nsManifestZIPLoader.cpp
rename : modules/libjar/nsManifestZIPLoader.h => xpcom/components/nsManifestZIPLoader.h
2010-08-04 14:09:21 -04:00
Benjamin Smedberg
319f11fc9c
Bug 579178 part A - Code changes to add a "manifest" directive to read sub-manifests and read only the root chrome.manifest file, instead of enumerating components/*.manifest and chrome/*.manifest. Review comments by Mossop to be addressed in a followup commit.
2010-07-22 10:31:29 -04:00
Philipp Wagner
716f62fd7c
Bug 578237: Fix error message in nsComponentManagerImpl::RegisterCIDEntry. r=bsmedberg
2010-07-13 10:02:22 -07:00
Neil Rashbrook
6e3edb0968
Bug 568691 Further followup to actually register static components r=bsmedberg
2010-07-13 15:24:58 +01:00
Benjamin Smedberg
3e909b0671
Fix --disable-libxul from bug 568691. r=Mossop
2010-07-02 14:23:41 -04:00
Benjamin Smedberg
a18bc5814e
Bug 568691 - Fix MOZ_OMNIJAR registration, r=mwu
...
--HG--
rename : modules/libjar/nsXPTZipLoader.cpp => modules/libjar/nsManifestZIPLoader.cpp
rename : modules/libjar/nsXPTZipLoader.h => modules/libjar/nsManifestZIPLoader.h
rename : xpcom/reflect/xptinfo/public/nsIXPTLoader.idl => xpcom/components/nsIManifestLoader.idl
2010-07-02 09:53:19 -04:00
Benjamin Smedberg
e2c331db23
Require XPT files to be loaded explicitly: they are never auto-registered when found in a components/ directory.
2010-06-29 18:16:48 -04:00
Benjamin Smedberg
47235edc30
Fix and test logging of manifest parsing and registration. I discovered that the outer loop doesn't track line numbers correctly when there are multiple newlines in a row, which requires manual looping instead of using nsCRT::strtok.
2010-06-28 13:55:57 -04:00
Benjamin Smedberg
67fa2b02d6
Rename XRE_AddComponentLocation to XRE_AddManifestLocation to better-convey what it actually does now (it still auto-registers XPT files when passed a directory, but we may get rid of that as well and just fold those into components.manifest), as noted in bug 568691 comment 58.
2010-06-27 21:26:38 -04:00
Benjamin Smedberg
feb8ea92f6
Free the component-location arrays at shutdown.
2010-06-25 17:27:10 -04:00
Benjamin Smedberg
3fb6224e19
Bug 568691 - Normalize relative paths on Windows to use back slashes, and add a manifest processing directive for XPT files so that extension chrome.manifest can point to them and we don't have to troll around in extension components/ directories.
2010-06-25 13:55:46 -04:00
Benjamin Smedberg
bec3edbfca
Bug 568691 followup - Clear the static module table at shutdown to fix leaks.
...
--HG--
extra : rebase_source : cc01ea1ae837f5b917d44006dde72484f3ffd104
2010-06-25 10:02:17 -04:00
Benjamin Smedberg
ddbba9f3f0
Bug 568691, followup to RegisterFactory implementation: make the nsFactoryEntry hold a CIDEntry with the proper CID, because code elsewhere expects that to be present (ContractIDToCID and the pending-CID checks).
2010-06-25 10:44:35 -04:00
Benjamin Smedberg
e9d5a3c6b8
Revert many of the interface changes from bug 568691, so that binaries can be made which are compatible with Firefox 3.6 and Firefox 4. Note that this is not an ongoing process: it will not be possible to make single binary components which are compatible with both Firefox 4 and Firefox 4.1, but you will be able to ship two components and select one based on the platform version.
2010-06-24 14:31:18 -04:00
Benjamin Smedberg
a8c1b00a82
Fix factory registration in test_unsafeBidiChars.xhtml to not override CIDs.
2010-06-23 16:18:08 -04:00
Benjamin Smedberg
2ea5d7e810
Bug 568691 fixups: alter mockObjects.js so that it registers its mock by contractID but doesn't replace the CID. Fix the generic classinfo not to assert when code asks for the class description (which is no longer implemented).
2010-06-23 15:18:13 -04:00
Benjamin Smedberg
107141f8f0
Remove hard tabs which I accidentally introduced into nsComponentManager.{h,cpp}.
2010-06-23 13:36:53 -04:00
Benjamin Smedberg
d251d0ff10
Implement RereadChromeManifests for bug 568691.
2010-06-22 16:24:01 -04:00
Benjamin Smedberg
db9b653c42
Bug 568691 - register chrome/*.manifest in addition to components/*.manifest files, chrome appears to work in xpcshell again.
2010-06-21 13:49:38 -04:00
Benjamin Smedberg
18fcb3c625
Address review comments from bug 568691 comment 13/14/17:
...
* rename mozilla::Module struct entries to be clearer
* change Module documentation so that the last entry is { NULL } in all cases (the compiler will 0-expand the structure)
* remove NS_XPCOM_COMPONENT_REGISTRY_FILE
* add MOZ_MEDIA/MOZ_OGG/MOZ_WAVE/MOZ_WEBM ifdefs to nsHTMLMediaElement.h and nsContentUtils.cpp
2010-06-21 12:46:26 -04:00
Benjamin Smedberg
0df0345c66
Merge mozilla-central into the "branch" for but 568691. The omnijar XPT/component/chrome registration was removed during this merge, and will be re-added to the component manager shortly.
...
--HG--
rename : content/base/public/nsIChromeRegistry.idl => chrome/public/nsIChromeRegistry.idl
2010-06-21 11:41:42 -04:00
Benjamin Smedberg
8af9251fe4
Merge platform-specific branches of bug 568691.
2010-06-21 08:57:50 -04:00
Benjamin Smedberg
edbd474f05
Bug 568691 part C - Register all components based on reading .manifest files from the components directories. Binary components auto-register using "binary-component name.dll". JS components register using "component CID file.js" "contract @mozilla.org/contract;1 CID" and "category categoryname keyname value".
...
This patch has some bugs, specifically we stop looking for .manifest files in chrome/. I will fix that in a followup. It also probably breaks non-libxul builds because of ordering issues.
Another followup will actually fix our in-tree JS components and add build machinery for creating a proper components.manifest file.
2010-06-11 16:13:26 -04:00
Benjamin Smedberg
dfd21e98ac
Fix Linux compile errors/warnings in xpcom/components
2010-06-11 12:03:06 -04:00
Benjamin Smedberg
c611ebcd81
Bug 568691 part A - register static and binary components using data tables rather than programmatic nsIComponentRegistrar methods. This part contains the important needs-review bits of the change: part B contains the mechanical changes to each module in order to actually get a working build. Part C will contain changes necessary to register JS components from .manifest files
2010-06-10 14:11:11 -04:00
Michael Wu
63c737142d
Bug 552121 - Load js modules and components from the omnijar [7/7], r=bsmedberg
2010-06-15 12:38:46 -07:00
Josh Matthews
2abfb422b2
Bug 564689 - Signed/unsigned comparison warnings in nsComponentManager.cpp r=bsmedberg
...
--HG--
extra : rebase_source : 9d74a7a43a729ce9e0f96bd98992e6359da23322
2010-05-19 16:37:10 -04:00
Ehsan Akhgari
db9d404619
Bug 560647 - add startup timeline instrumentation; r=vlad
2010-05-19 19:22:19 -04:00
Taras Glek
023d663a32
Bug 516085 - C++ easy access for common global services r=bsmedberg
2010-04-02 11:38:25 -07:00
Vladimir Vukicevic
eef31a2a3e
b=519357, followup leak fix
2009-11-13 12:08:34 -08:00
Benjamin Smedberg
105915805e
Build bustage fix, bug 519357. I hate compilers.
2009-11-05 09:22:45 -05:00
Benjamin Smedberg
1ead4f5856
Bug 519357 - Only load known binary components from the app directory by reading a components.list file, r=vlad
2009-11-05 09:08:49 -05:00
bhsieh@mozilla.com
e1ceff4347
Bug 511761 - Only use compatibility.ini (not .autoreg, or stat()s) to invalidate fastloads and other caches (r=bsmedberg, RELAND WITH TEST FIX)
2009-10-15 23:32:29 -07:00
Paul O’Shannessy
5703d590b2
Backed out changeset 89f53914ecd9 (bug 511761)
2009-10-14 12:41:03 -07:00
bhsieh@mozilla.com
98a3f13ee0
Bug 511761 - Only use compatibility.ini (not .autoreg, or stat()s) to invalidate fastloads and other caches (r=bsmedberg)
2009-10-14 09:40:45 -07:00
Karsten Düsterloh
7551b2feb8
Backed out changeset ecd2b45a42af (Bug 364864) due to Leak test red
2009-10-05 23:34:21 +02:00
Karsten Düsterloh
2690b85054
Bug 364864: nsICategoryManager::deleteCategoryEntry does not persist outside of component registration; r=bsmedberg
2009-10-05 21:05:24 +02:00
Hashem Masoud
b71a1a1cfa
Bug 489502 - Replace NS_ASSERTION(0, ...) by NS_ERROR(...) in mozilla-central; r=benjamin
2009-08-14 16:09:00 +02:00
Arpad Borsos
4fc5b38c9d
Bug 474369 - get rid of nsVoidArray, xpcom part; r=bsmedberg
2009-04-03 18:43:08 +02:00
Neil Rashbrook
56f8f9628c
Bug 484309 Switch component manager logging over to NS_Free c.f. bug 331165 r+sr=bsmedberg
2009-04-01 17:08:03 +01:00
Neil Rashbrook
a3cb4f1f32
Fix allocator abuses: bug 331165 r+sr=bsmedberg; bug 484309 r+sr=bsmedberg; bug 484312 r+sr=biesi
2009-03-25 13:19:08 +00:00
Sergey Yanovich
40952ed115
Bug 462497. Don't reacquire a monitor in nsComponentManagerImpl::HashContractID that we already hold. r=bsmedberg
...
--HG--
extra : rebase_source : 5a024be37b8d28025f24b207d9622c1b597daea0
2009-01-08 21:41:55 +13:00
timeless@mozdev.org
65a8d44305
Bug 470595 - crash [@ strlen - nsComponentManagerImpl::IsContractIDRegistered], r=bsmedberg
2009-01-07 20:42:15 -08:00
Taras Glek
c145993f88
Bug 470859: speed things up by getting rid of dead nsID callsites r=bsmedberg
2009-01-05 14:48:25 -08:00
Arpad Borsos
c72ef7d248
Bug 456388 - Remove PR_STATIC_CALLBACK and PR_CALLBACK(_DECL) from the tree; r+sr=brendan
2008-10-10 17:04:34 +02:00
Ben Turner
9ecb398b01
Bug 449822 - "Service manager can create two instances of a service". r=bsmedberg.
2008-09-04 15:44:41 -07:00
Jesse Ruderman
a1dd1f31eb
Fix spelling error in a log message (bug 443520).
2008-07-05 18:09:24 -07:00
Sudheer Kumar Peddireddy
e620026ed6
Increase the initial sizes of hash tables that are guaranteed to grow. b=432633 r=dbaron
2008-06-03 15:25:31 -07:00
brade@comcast.net
a9022666e1
Bug #416886 ; r=bsmedberg, a=beltzner Preserve original order when processing deferred components. Add TestRegistrationOrder automated test.
2008-03-31 07:40:10 -07:00
benjamin@smedbergs.us
1141ded71b
Back out bug 412320 and various followups because the perf impact was minimal and the code is more complicated
2008-02-21 12:39:20 -08:00