Граф коммитов

143 Коммитов

Автор SHA1 Сообщение Дата
Benjamin Smedberg 94560defeb Bug 684887 part B - make a SafeMutex which should crash if you try to recursively lock it, instead of deadlocking. r=bent
--HG--
extra : rebase_source : 694c5cd571e5802ce5e5af4ea03b9edc7e6fb8d4
2013-03-13 16:39:53 -04:00
Benjamin Smedberg e70052ad37 Bug 684887 part A - Make the XPCOM component manager non-reentrant, and make sure that nsFactoryEntry.mFactory is protected by it, r=cjones
--HG--
extra : rebase_source : f6a458a98c53f8a7490bc621095029e9446d4775
2013-03-13 16:39:28 -04:00
Nicholas Nethercote 5cd2f9931a Bug 807884 (part 2) - Add memory reporters for nsComponentManager and nsCategoryManager. r=bsmedberg.
--HG--
extra : rebase_source : 6dba2659b6f31aa0e53804f5afdd30f0f0c1d950
2012-10-19 05:07:36 -07:00
Nicholas Nethercote e504ffdbee Bug 807884 (part 1) - Remove dead nsComponentManagerImpl::mLoaderData. r=bsmedberg.
--HG--
extra : rebase_source : e332db911c94f4ba6b3fe4b0fef0a545cc08403b
2012-10-19 05:07:34 -07:00
Ehsan Akhgari e368dc9c85 Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg
This patch was generated by a script.  Here's the source of the script for
future reference:

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name nsXPCOMCID.h \
       ! -name prtypes.h \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert PRInt8 int8_t
convert PRUint8 uint8_t
convert PRInt16 int16_t
convert PRUint16 uint16_t
convert PRInt32 int32_t
convert PRUint32 uint32_t
convert PRInt64 int64_t
convert PRUint64 uint64_t

convert PRIntn int
convert PRUintn unsigned

convert PRSize size_t

convert PROffset32 int32_t
convert PROffset64 int64_t

convert PRPtrdiff ptrdiff_t

convert PRFloat64 double
2012-08-22 11:56:38 -04:00
Ehsan Akhgari df3797a6e7 Bug 758992 - Make the classes which use the XPCOM nsISupports implementation macros final, to avoid the warning about deleting using a pointer to a base class with virtual functions and no virtual dtor (XPCOM parts); r=bsmedberg 2012-06-05 19:51:58 -04:00
Geoff Lankow 5cefea8480 Bug 749930 - Replace uses of nsILocalFile with nsIFile (compiled code only); r=bsmedberg 2012-06-06 14:08:30 +12:00
Gervase Markham 82ff7027aa Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Mike Hommey 45173f5be0 Bug 695843 part 9 - Use FileLocations in the component manager. r=bsmedberg 2011-11-08 18:10:51 +01:00
Mike Hommey f8f93f4de1 Bug 695843 part 6 - Don't separate file and JAR modules in component manager. r=bsmedberg 2011-11-08 18:18:12 +01:00
Mike Hommey 97ad3242be Bug 695843 part 2 - Avoid code duplication for components manifest registration. r=bsmedberg 2011-12-08 11:03:36 +01:00
Ehsan Akhgari 92064e6d3f Bug 690892 - Replace PR_TRUE/PR_FALSE with true/false on mozilla-central; rs=dbaron
Landing on a CLOSED TREE
2011-10-17 10:59:28 -04:00
Michael Wu d2b70213ac Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones
--HG--
rename : tools/trace-malloc/bloatblame.c => tools/trace-malloc/bloatblame.cpp
2011-09-28 23:19:26 -07:00
Hernan Rodriguez Colmeiro c4c4295119 Bug 564667: Allow bootstrapped add-ons to have chrome URLs. r=dtownsend, sr=bsmedberg 2011-07-29 11:20:47 +02:00
Chris Jones 31aa2c4e77 Bug 556214, parts 1 and 1.1: Rename Monitor to ReentrantMonitor and fix existing Monitor users. r=roc
--HG--
rename : xpcom/glue/Monitor.h => xpcom/glue/ReentrantMonitor.h
2011-04-29 14:21:57 -05:00
Chris Jones ext:(%20and%20Kyle%20Huey%20%3Ckhuey%40kylehuey.com%3E) 2c92e3ecd5 Rollup of bug 645263 and bug 646259: Switch to mozilla:: sync primitives. r=cjones,dbaron,doublec,ehsan src=bsmedberg
Bug 645263, part 0: Count sync primitive ctor/dtors. r=dbaron
Bug 645263, part 1: Migrate content/media to mozilla:: sync primitives. r=doublec
Bug 645263, part 2: Migrate modules/plugin to mozilla:: sync primitives. sr=bsmedberg
Bug 645263, part 3: Migrate nsComponentManagerImpl to mozilla:: sync primitives. sr=bsmedberg
Bug 645263, part 4: Migrate everything else to mozilla:: sync primitives. r=dbaron
Bug 645263, part 5: Remove nsAutoLock.*. sr=bsmedberg
Bug 645263, part 6: Make editor test be nicer to deadlock detector. r=ehsan
Bug 645263, part 7: Disable tracemalloc backtraces for xpcshell tests. r=dbaron
Bug 646259: Fix nsCacheService to use a CondVar for notifying. r=cjones
2011-03-31 23:29:02 -05:00
Chris Jones 699024f868 Backed out changeset 4beec31b9ea9 for increasing frequency of intermittent orange bug 618052 2011-03-31 18:57:38 -05:00
Chris Jones ext:(%20and%20Kyle%20Huey%20%3Ckhuey%40kylehuey.com%3E) 0ce53bb598 Rollup of bug 645263 and bug 646259: Switch to mozilla:: sync primitives. r=cjones,dbaron,doublec,ehsan src=bsmedberg
Bug 645263, part 0: Count sync primitive ctor/dtors. r=dbaron
Bug 645263, part 1: Migrate content/media to mozilla:: sync primitives. r=doublec
Bug 645263, part 2: Migrate modules/plugin to mozilla:: sync primitives. sr=bsmedberg
Bug 645263, part 3: Migrate nsComponentManagerImpl to mozilla:: sync primitives. sr=bsmedberg
Bug 645263, part 4: Migrate everything else to mozilla:: sync primitives. r=dbaron
Bug 645263, part 5: Remove nsAutoLock.*. sr=bsmedberg
Bug 645263, part 6: Make editor test be nicer to deadlock detector. r=ehsan
Bug 645263, part 7: Disable tracemalloc backtraces for xpcshell tests. r=dbaron
Bug 646259: Fix nsCacheService to use a CondVar for notifying. r=cjones
2011-03-31 14:51:19 -05:00
Michael Wu ef808d0528 Bug 533038 - 1. Generalize manifest reading code and add api for reading manifests from jars, r=bsmedberg a=blocking-beta6 2010-09-08 20:37:11 -07:00
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
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 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 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 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 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 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 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
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
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
Ben Turner 9ecb398b01 Bug 449822 - "Service manager can create two instances of a service". r=bsmedberg. 2008-09-04 15:44:41 -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
benjamin@smedbergs.us adac3963d9 Bug 412320 - Try code-generation for QI impls, r=roc+luser 2008-01-25 09:14:48 -08:00
bsmedberg%covad.net 75f0b3fd3c Re-landing bug 316416 with biesi's uninitialized-rv catch and with the windows nsIFile hashing cached (bug 316732) 2005-12-13 17:55:43 +00:00
bsmedberg%covad.net d54d3d7b09 Reverting bug 316416 due to Ts regression and mysterious monkey orange :-( 2005-12-03 15:27:17 +00:00
bsmedberg%covad.net 28e3019754 Bug 316416 - Convert nsIComponentLoader into nsIModuleLoader, xpcom bits r=darin xpconnect bits r=shaver; and bug 318625 - Make a version of nsTArray.AppendElement that doesn't copy-construct, r=darin 2005-12-02 16:34:42 +00:00
bsmedberg%covad.net 18f06c31b3 Bug 316558 - Stop implementing a few old nsIComponentManagerObsolete methods, r=darin 2005-11-15 20:15:05 +00:00
bsmedberg%covad.net 5fba1c6aea Bug 296561 - rework static component loading so that nsIXULAppInfo/Runtime/etc are available during autoregistration/xpcom-startup notification (and make static component loading saner in general) - r=shaver+dougt, a=asa 2005-07-21 13:33:43 +00:00
bsmedberg%covad.net 68e5fbad29 Bug 282761 - crash if getClassObject "succeeds" but returns null r=dougt 2005-02-19 14:43:42 +00:00
darin%meer.net 6d8591d85f fixes bug 263360 "Make CallCreateInstance use NS_GetComponentManager instead of nonfrozen/deprecated nsComponentManager symbols" r=bsmedberg sr=dbaron 2004-11-23 20:53:38 +00:00
bzbarsky%mit.edu a59c28f736 Don't store "no such component" entries in the hashtable when a contractid
lookup fails.  Now that we preload the registry, that serves no purpose.  Bug
230776, patch by Malcolm Rowe <malcolm-bmo@farside.org.uk>, r=dougt, sr=alecf
2004-04-18 17:35:29 +00:00
gerv%gerv.net 31625ba2b1 Bug 236613: change to MPL/LGPL/GPL tri-license. 2004-04-18 14:21:17 +00:00
scott%scott-macgregor.org 819efeac2a Back out the backout of Bug #235882. It looks like dbaron's leak fix actually fixed the regressions the component manager
changes caused for JS components.
2004-03-10 06:40:36 +00:00
scott%scott-macgregor.org 5ed82ec38c Backout Bug #235882. This broke the component manager's ability to load JS components leading to several regressions,
most noticeably: Bug #236952.
2004-03-10 06:11:10 +00:00
timeless%mozdev.org 666079e2c3 Bug 235882 Make nsComponentManagerImpl::AddLoaderType return only one type of value
r=dougt
2004-03-09 07:09:52 +00:00