289 Commits

Author SHA1 Message Date
brade%comcast.net
b294e55295 Bug #416886; r=bsmedberg, a=beltzner
Preserve original order when processing deferred components.
  Add TestRegistrationOrder automated test.


git-svn-id: svn://10.0.0.236/trunk@248886 18797224-902f-48f8-a5cc-f745e15eee43
2008-03-31 14:40:16 +00:00
benjamin%smedbergs.us
3968e1b42d Back out bug 412320 and various followups because the perf impact was minimal and the code is more complicated
git-svn-id: svn://10.0.0.236/trunk@246221 18797224-902f-48f8-a5cc-f745e15eee43
2008-02-21 20:39:23 +00:00
benjamin%smedbergs.us
b1d7f71aea Bug 416886 - Find module loaders which are part of the static component list early, and process components which end up in the leftovers list in forwards instead of reverse order. This means that JS component in extensions can correctly override JS components in the core app. r=dougt a=schrep
git-svn-id: svn://10.0.0.236/trunk@246193 18797224-902f-48f8-a5cc-f745e15eee43
2008-02-21 16:23:06 +00:00
benjamin%smedbergs.us
cc4193bab8 Bug 412320 - Try code-generation for QI impls, r=roc+luser
git-svn-id: svn://10.0.0.236/trunk@243992 18797224-902f-48f8-a5cc-f745e15eee43
2008-01-25 17:14:53 +00:00
bugzilla%standard8.plus.com
0ae28e6314 Bug 410326 do_CreateInstanceFromCategory is no longer used. r/sr=benjamin,a1.9=dsicore
git-svn-id: svn://10.0.0.236/trunk@242364 18797224-902f-48f8-a5cc-f745e15eee43
2008-01-04 18:08:34 +00:00
jwalden%mit.edu
dda6ff3c99 Bug 348748 - Replace all instances of NS_STATIC_CAST and friends with C++ casts (and simultaneously bitrot nearly every patch in existence). r=bsmedberg on the script that did this. Tune in next time for Macro Wars: Episode II: Attack on the LL_* Macros.
git-svn-id: svn://10.0.0.236/trunk@229504 18797224-902f-48f8-a5cc-f745e15eee43
2007-07-08 07:08:56 +00:00
joshmoz%gmail.com
b9f5f419a0 fix some gcc 4 warnings in xpcom. patch by Christian Haberstroh. b=382753 r=bent sr=bsmedberg
git-svn-id: svn://10.0.0.236/trunk@227468 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-04 15:44:43 +00:00
dbaron%dbaron.org
30f83072c5 Remove unused getKey callback from PLDHashTableOps/JSDHashTableOps. b=374906 r=bsmedberg
git-svn-id: svn://10.0.0.236/trunk@222462 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-27 15:33:45 +00:00
dbaron%dbaron.org
9726bb648a Revert previous change since nsRegistry still uses it. b=359512
git-svn-id: svn://10.0.0.236/trunk@214717 18797224-902f-48f8-a5cc-f745e15eee43
2006-11-04 17:06:32 +00:00
dbaron%dbaron.org
a45121c6db Remove unneded NS_COM. b=358953 r=bsmedberg
git-svn-id: svn://10.0.0.236/trunk@214671 18797224-902f-48f8-a5cc-f745e15eee43
2006-11-03 23:04:15 +00:00
timeless%mozdev.org
b3b9a205df Bug 345903 Crash in [@ nsComponentManagerImpl::GetService] with broken JS component
r=dougt
ComponentManager talks to factories when it's asked to create components or get services. The factories are expected to return success when they provide an object or return a failure code and provide a null pointer.

Unfortunately, it's trivially easy for someone writing a js xpcom component to mess up their factory such that they return success without providing an object.

In this case we will now throw NS_ERROR_SERVICE_NOT_FOUND. I've picked this because we did not find a factory capable of properly servicing our request :) -- and because there's no better result available :(.

This branch eventually deserves PR_LOGGING so that people could see it even if they didn't build debug (but did somehow get prlogging), but that's left for a future patch.


git-svn-id: svn://10.0.0.236/trunk@203727 18797224-902f-48f8-a5cc-f745e15eee43
2006-07-26 16:00:16 +00:00
martijn.martijn%gmail.com
aecac674dd Bug 333307 - signature is wrong for nsComponentManagerImpl::RegisterComponent and nullchecks are improperly handled. Patch by Nickolay Ponomarev, r=timeless, sr=darin
git-svn-id: svn://10.0.0.236/trunk@194008 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-10 17:09:48 +00:00
bryner%brianryner.com
7ec5e10667 Remove dependency on nsIClassInfo.h from nsISupports.h (bug 330420). This adds a new nsIClassInfoImpl.h file which can be included to get the CI implementation macros. Also, removes unneeded inclusion of nsIProgrammingLanguage.h from nsIClassInfo.h. r=darin.
git-svn-id: svn://10.0.0.236/trunk@192401 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-15 04:59:42 +00:00
bsmedberg%covad.net
cb61fd440c Bug 320324 - Static modules released too late, assertions in GenerateJavaInterfaces, r=darin
git-svn-id: svn://10.0.0.236/trunk@186363 18797224-902f-48f8-a5cc-f745e15eee43
2005-12-21 13:50:13 +00:00
bsmedberg%covad.net
117197e182 Re-landing bug 316416 with biesi's uninitialized-rv catch and with the windows nsIFile hashing cached (bug 316732)
git-svn-id: svn://10.0.0.236/trunk@185996 18797224-902f-48f8-a5cc-f745e15eee43
2005-12-13 17:55:43 +00:00
bsmedberg%covad.net
9c52a8d23a Reverting bug 316416 due to Ts regression and mysterious monkey orange :-(
git-svn-id: svn://10.0.0.236/trunk@185645 18797224-902f-48f8-a5cc-f745e15eee43
2005-12-03 15:27:17 +00:00
bsmedberg%covad.net
314dbb16bb Fix a logic error caught by the MSVC compiler and an initializer error, bug 316416
git-svn-id: svn://10.0.0.236/trunk@185579 18797224-902f-48f8-a5cc-f745e15eee43
2005-12-02 17:38:18 +00:00
bsmedberg%covad.net
dc84be3e28 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
git-svn-id: svn://10.0.0.236/trunk@185574 18797224-902f-48f8-a5cc-f745e15eee43
2005-12-02 16:34:42 +00:00
timeless%mozdev.org
8a213cf6db Bug 106386 Correct misspellings in source code
patch by unknown@simplemachines.org r=timeless rs=brendan


git-svn-id: svn://10.0.0.236/trunk@185276 18797224-902f-48f8-a5cc-f745e15eee43
2005-11-25 19:48:04 +00:00
bsmedberg%covad.net
5ecf8d2231 Bug 316558 - Stop implementing a few old nsIComponentManagerObsolete methods, r=darin
git-svn-id: svn://10.0.0.236/trunk@184708 18797224-902f-48f8-a5cc-f745e15eee43
2005-11-15 20:15:05 +00:00
bsmedberg%covad.net
112c33275c Bug 305949 Part 1 - Separate the frozen XPCOM exports with the XPCOM_API macro; add compatibility methods to the frozen string API; convert most of the tests/tools to use the xpcom glue when appropriate r=darin This checking does not actually stop exporting the nonfrozen methods yet, pending a bunch of test cleanup throughout the tree.
git-svn-id: svn://10.0.0.236/trunk@184304 18797224-902f-48f8-a5cc-f745e15eee43
2005-11-08 18:17:49 +00:00
bsmedberg%covad.net
b7271f1273 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
git-svn-id: svn://10.0.0.236/trunk@176383 18797224-902f-48f8-a5cc-f745e15eee43
2005-07-21 13:33:43 +00:00
bsmedberg%covad.net
b0741b74a7 Bug 298044 - Dynamically load XPCOM dependent libs as part of the XPCOM standalone glue bootstrap process, r=darin a=asa
git-svn-id: svn://10.0.0.236/trunk@176104 18797224-902f-48f8-a5cc-f745e15eee43
2005-07-14 18:42:59 +00:00
cbiesinger%web.de
0f728f0e37 bug 246085 nsCategoryManager should notify observers when items are added/removed from categories
r=dougt sr=darin a=asa


git-svn-id: svn://10.0.0.236/trunk@174800 18797224-902f-48f8-a5cc-f745e15eee43
2005-06-17 21:07:47 +00:00
timeless%mozdev.org
6f0bfe9a31 Bug 208909 compreg.dat protection problem [OpenVMS status is decimal 114690]
lock down permissions and sanitize with comments
r=dougt sr=dveditz a=asa


git-svn-id: svn://10.0.0.236/trunk@174413 18797224-902f-48f8-a5cc-f745e15eee43
2005-06-10 17:32:48 +00:00
shaver%mozilla.org
c6fb08a2e1 Bug 290247: fix 3 long-standing do_CreateInstanceFromCategory bugs:
- initialize mOuter so we don't always try to aggregate against a random
  stack pointer;
- don't try to store through the oft-null mErrorPtr
- set rv so that we actually check CreateInstanceByContractID's return
r=bsmedberg, sr=darin, a=brendan


git-svn-id: svn://10.0.0.236/trunk@172105 18797224-902f-48f8-a5cc-f745e15eee43
2005-04-13 23:56:54 +00:00
bsmedberg%covad.net
2b789b4c5a Other part of bug 267040
git-svn-id: svn://10.0.0.236/trunk@171001 18797224-902f-48f8-a5cc-f745e15eee43
2005-03-22 20:53:17 +00:00
timeless%mozdev.org
e272c49d20 Bug 283131 Leaking fd/registry in OOM cases
r=dougt


git-svn-id: svn://10.0.0.236/trunk@169958 18797224-902f-48f8-a5cc-f745e15eee43
2005-02-27 21:32:52 +00:00
timeless%mozdev.org
a952273ea6 Bug 282743 ABBA deadlock componentmanager monitor/jsgc claimscope
whitespace change to accentuate comment per brendan


git-svn-id: svn://10.0.0.236/trunk@169592 18797224-902f-48f8-a5cc-f745e15eee43
2005-02-22 08:00:20 +00:00
timeless%mozdev.org
80f9d22beb Bug 282743 ABBA deadlock componentmanager monitor/jsgc claimscope
r=dougt sr=bz


git-svn-id: svn://10.0.0.236/trunk@169440 18797224-902f-48f8-a5cc-f745e15eee43
2005-02-18 22:46:24 +00:00
timeless%mozdev.org
eb7a909eba Bug 240589 hasMoreElements is off by one for simple enumerators returned by the component registrar
patch by cmlenz@gmx.de r=alecf sr=alecf


git-svn-id: svn://10.0.0.236/trunk@167881 18797224-902f-48f8-a5cc-f745e15eee43
2005-01-17 09:26:42 +00:00
timeless%mozdev.org
94f4f10868 Bug 277841 ###!!! ASSERTION: Potential deadlock between nsComponentManagerImplMonitor@959108 and Monitor@22d1550: 'Error', file r:/cenzic/mozilla/xpcom/threads/nsAutoLock.cpp, line 302
r=shaver


git-svn-id: svn://10.0.0.236/trunk@167711 18797224-902f-48f8-a5cc-f745e15eee43
2005-01-14 07:03:16 +00:00
shaver%mozilla.org
9101a1f696 Bug 275075: fix 100%-chance crash when using two-arg form of
do_GetServiceFromCategory. r=bsmedberg, sr=darin.


git-svn-id: svn://10.0.0.236/trunk@166821 18797224-902f-48f8-a5cc-f745e15eee43
2004-12-17 20:16:50 +00:00
bryner%brianryner.com
59c875f83e Add support for using gcc's visibility pragma to treat all function and method declarations as "hidden" unless declared otherwise. Create wrappers for system headers that cause them to be treated as default-visibility declarations. This gives a substantial code size and performance win on compilers that support it, and should show up on the gruff tinderbox. Bug 273336, r=darin sr=dbaron.
git-svn-id: svn://10.0.0.236/trunk@166738 18797224-902f-48f8-a5cc-f745e15eee43
2004-12-15 05:52:44 +00:00
bryner%brianryner.com
e1daca3ce3 Reduce do_GetService code bloat further by adding specialized assignment to nsCOMPtr and providing a version with no error pointer. Also make CallGetService work the same way as CallGetComponent does, as far as using frozen/non-frozen interface to service manager. Bug 264456, r=darin.
git-svn-id: svn://10.0.0.236/trunk@165757 18797224-902f-48f8-a5cc-f745e15eee43
2004-11-24 22:48:45 +00:00
darin%meer.net
86a93a5874 fixes bug 263360 "Make CallCreateInstance use NS_GetComponentManager instead of nonfrozen/deprecated nsComponentManager symbols" r=bsmedberg sr=dbaron
git-svn-id: svn://10.0.0.236/trunk@165662 18797224-902f-48f8-a5cc-f745e15eee43
2004-11-23 20:53:38 +00:00
dbaron%dbaron.org
49198d090c Reduce code size of do_GetService by moving an nsCOMPtr and QueryInterface out of the part that's done inline. b=264456 r=darin
git-svn-id: svn://10.0.0.236/trunk@163831 18797224-902f-48f8-a5cc-f745e15eee43
2004-10-15 17:44:30 +00:00
kjh-5727%comcast.net
61237c94ac Bug 258321 - copy + paste error in comment. Patch by Justin Wood (116057@bacon.qcc.mass.edu), comment change only.
git-svn-id: svn://10.0.0.236/trunk@163371 18797224-902f-48f8-a5cc-f745e15eee43
2004-10-07 18:20:19 +00:00
roc+%cs.cmu.edu
bdc7e5f59b Bug 226439. Convert Seamonkey to EqualsLiteral. rs=darin
git-svn-id: svn://10.0.0.236/trunk@156785 18797224-902f-48f8-a5cc-f745e15eee43
2004-05-22 22:15:22 +00:00
bzbarsky%mit.edu
135f4a26a4 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


git-svn-id: svn://10.0.0.236/trunk@155079 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-18 17:35:29 +00:00
gerv%gerv.net
210853d71e Bug 236613: change to MPL/LGPL/GPL tri-license.
git-svn-id: svn://10.0.0.236/trunk@155067 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-18 14:21:17 +00:00
scott%scott-macgregor.org
72c723ac25 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.


git-svn-id: svn://10.0.0.236/trunk@153826 18797224-902f-48f8-a5cc-f745e15eee43
2004-03-10 06:40:36 +00:00
scott%scott-macgregor.org
fb2ac810aa Backout Bug #235882. This broke the component manager's ability to load JS components leading to several regressions,
most noticeably: Bug #236952.


git-svn-id: svn://10.0.0.236/trunk@153824 18797224-902f-48f8-a5cc-f745e15eee43
2004-03-10 06:11:10 +00:00
dbaron%dbaron.org
6bb5e72f6d Fix leak regression from timeless's checkin yesterday. b=235882 r=caillon sr=jst
git-svn-id: svn://10.0.0.236/trunk@153775 18797224-902f-48f8-a5cc-f745e15eee43
2004-03-09 23:17:19 +00:00
timeless%mozdev.org
467a5e68f1 Bug 235882 Make nsComponentManagerImpl::AddLoaderType return only one type of value
r=dougt


git-svn-id: svn://10.0.0.236/trunk@153738 18797224-902f-48f8-a5cc-f745e15eee43
2004-03-09 07:09:52 +00:00
timeless%mozdev.org
2463c3d411 Bug 235875 Replace NS_ERROR_SERVICE_NOT_FOUND
r=dougt


git-svn-id: svn://10.0.0.236/trunk@153373 18797224-902f-48f8-a5cc-f745e15eee43
2004-02-29 08:04:46 +00:00
bryner%brianryner.com
1bd144eac3 Continuing removal of unneeded virtual destructors (bug 229875). r=dougt, sr=dbaron.
git-svn-id: svn://10.0.0.236/trunk@151669 18797224-902f-48f8-a5cc-f745e15eee43
2004-01-22 01:01:19 +00:00
bsmedberg%covad.net
3f2c63efd6 Followup on bug 223084, fix bustage of static builds. Pass a null nsIFile* to the static component loader during autoregistration.
git-svn-id: svn://10.0.0.236/trunk@148688 18797224-902f-48f8-a5cc-f745e15eee43
2003-11-01 14:46:08 +00:00
bryner%brianryner.com
c81aa21722 Fix build on gcc 3.4 by removing extra semicolons (bug 218551). r/sr=dbaron, a=brendan.
git-svn-id: svn://10.0.0.236/trunk@146626 18797224-902f-48f8-a5cc-f745e15eee43
2003-09-08 00:31:50 +00:00
brendan%mozilla.org
95220b5330 Add shared DHashTableOps for [const] char *key use-cases, clean up dhash API abusages (214839, r=dougt, sr=dbaron).
git-svn-id: svn://10.0.0.236/trunk@145624 18797224-902f-48f8-a5cc-f745e15eee43
2003-08-05 20:09:21 +00:00