sspitzer%netscape.com
22b6b14e23
purify related fixes. first, prevent a crash that was prevent me
...
from running purify in nsGenericFactory.cpp. Second, add support
for "mozilla -pure". Only works if you've build mozilla.bin.pure, of course.
1999-12-15 06:23:50 +00:00
scc%netscape.com
964ca8227e
Fix specialized |CallQueryInterface| as per review by travis ... r=travis.
1999-12-08 01:44:06 +00:00
scc%netscape.com
8c4ec2ebea
Adding an alternate version of |CallQueryInterface| as an experiment on behalf of travis. This function is not yet called, and should not effect the build or the runtime. r=hyatt
1999-12-07 14:09:29 +00:00
sfraser%netscape.com
ef6b5d0398
Make sure that all warnings just printf on Mac, and don't dump you into MacsBug. r=pinkerton
1999-12-07 07:21:30 +00:00
jband%netscape.com
2eaaa4083b
adding member initializer to quiet Purify. r=waterson.
1999-12-07 07:17:44 +00:00
mscott%netscape.com
2266405677
Fix build breakage for Travis.
1999-12-07 00:15:42 +00:00
tbogard%aol.net
2bc8f99632
Changed the way Assertion works. Get ready to remove all the old assertions methods. NS_ASSERTION now works the same way it used with the exception that on Windows it will put up and abort, retry, ignore box if you aren't in the debugger. r=warren.
1999-12-06 23:34:48 +00:00
warren%netscape.com
d25432f38d
Prefixed error/warning messages with something bold and assertive! (And somewhat distinguishable from other output.)
1999-12-02 02:37:54 +00:00
waterson%netscape.com
084b9e5d76
Make 'kGrowArrayBy' const. Thanks, Heikki.
1999-12-01 22:44:42 +00:00
warren%netscape.com
9da80972f9
Made WarnIfFalse not call abort. Made abort be continuable on Windows. r=travis
1999-12-01 05:51:45 +00:00
waterson%netscape.com
6d00264a22
Bug 9489. Add support for nsAutoVoidArray. r=scc,shaver
1999-12-01 00:37:11 +00:00
dp%netscape.com
edcdeb94a5
NS_GET_IID(). Thanks to patch from pp@ludasdesign.com r=dp@netscape.com
1999-11-30 23:36:32 +00:00
tbogard%aol.net
88639c509e
Flipped the default of the Windows Warning box that can come up. It now requires an environment variable be set to come up.
1999-11-29 05:50:22 +00:00
akkana%netscape.com
efc8c03546
AbortIfFalse should abort on all platforms -- that's the whole point. r=shaver
1999-11-24 21:58:20 +00:00
scc%netscape.com
67b0bb7084
added macros preparing us to move to table-driven QI. Please note: travis will be supporting any problems with this checkin till I'm back online in Michigan. r=tbogard
1999-11-23 05:55:31 +00:00
scc%netscape.com
e2e36b3c4a
don't ASSERT that it doesn't support weak references for NULL. r=pinkerton
1999-11-23 03:10:02 +00:00
scc%netscape.com
d34a60c8e2
clear out result in |do_QueryReferent| on error; assert in |NS_GetWeakReference| if the source object doesn't support weak references; also return NS_ERROR_NO_INTERFACE in release builds. r=pinkerton
1999-11-22 22:59:21 +00:00
dveditz%netscape.com
446b50640e
x86 win should join unix and alpha win part of DBG_LOG macro
1999-11-22 08:41:04 +00:00
scc%netscape.com
778573923a
fixed an annoying, but rare, bug where an |nsCOMPtr| in an ownership ring could |Release()| twice. See the comment in the code for details. r=waterson
1999-11-20 08:19:24 +00:00
dp%netscape.com
f7a9bde3c4
Eliminating leak of factory when getting it from hashtable.
...
Using NS_IMPL_ISUPPORTS1
Removing NS_DEFINE_IID
r=warren@netscape.com
1999-11-20 07:21:53 +00:00
warren%netscape.com
e43ba43af2
Fixed generic module factory lookup to look in cache.
1999-11-19 02:46:50 +00:00
fur%netscape.com
8dc3eec4c8
Fixed a problem with the NS_GENERIC_FACTORY_CONSTRUCTOR_INIT() macro.
...
If the Init() routine happens to perform a balanced AddRef/Release,
the instance will be prematurely destroyed when Release() is called.
The change is to do the AddRef() before calling the initialization
routine to stabilize the instance's ref-count.
r: dp, putterman
1999-11-16 03:05:36 +00:00
warren%netscape.com
9669aaed56
Minor fix.
1999-11-12 09:10:40 +00:00
warren%netscape.com
7f04320416
Added NS_NewGenericModule. Made NS_IMPL_NSGETFACTORY use it to save space. r=dp,alecf
1999-11-12 09:07:26 +00:00
tbogard%aol.net
dc27e88ecd
NS_WARN_IF_FALSE now by default puts the windows messagebox up on a tripped warning condition. Before it relied on the developer having an environment variable set. r=pink a=sdagley
1999-11-10 04:32:33 +00:00
shaver%netscape.com
c73533acb7
- NS_ERROR_FACTORY_REGISTER_AGAIN for deferring registration of a module until
...
later in the autoreg cycle.
- teach native component loader about deferred components
- add nsIComponentLoader::registerDeferredComponents
- teach component manager about deferred components
- made nsID::Parse take a |const char *| instead of a simple |char *|.
- move release of XPTI singletons until _after_ shutting down the component
manager to prevent re-initialization during JS component shutdown.
- category manager work: really delete from reg, start on enumeration
- use nsXPIDLCString instead of autoStringFree.
- fix nsRegistry to use allocator properly.
- cleaner memory management in nsFactoryEntry.
- capitalization fixed in nsIComponentLoader.idl
- clean up loader creation logic
- remove/disable lots of DEBUG_shaver noise
- added (disabled) warning about NSGetFactory usage
- move .so and .shlb higher up in the ValidDllExtensions list to marginally
speed up registration.
- added nsDll::GetRegistryLocation API
- properly export nsSupportsArray.h
- capitalization fixes in nsIEnumerator.idl
- added deferral to nsSample.js
1999-11-10 00:28:34 +00:00
scc%netscape.com
e46756059d
Added |do_CreateInstance()|, |do_GetService()| both by CID and ProgID. See bugs #17364 , #17448 . r={travis, dp}
1999-11-10 00:14:54 +00:00
scc%netscape.com
d5c96b7f3f
missed two T-->nsISupports instances, which primary platforms didn't catch, since they weren't instantiated
1999-11-08 12:25:11 +00:00
scc%netscape.com
20035843b1
Specialize |nsCOMPtr| for |nsISupports| (i.e., |nsCOMPtr<nsISupports>|). The specialization _does_not_ have the invariant that |nsCOMPtr<T>| has of always pointing to the COM-correct interface. An |nsCOMPtr<nsISupports>| essentially means "a pointer to _any_ [XP]COM interface". This change allows dougt to fix his M11 bug. a=chofmann, r={danm, hyatt}
1999-11-08 11:43:11 +00:00
dmose%mozilla.org
142ac52eaf
updated xPL license boilerplate to v1.1, a=chofmann@netscape.com,r=endico@mozilla.org
1999-11-06 03:43:54 +00:00
dougt%netscape.com
fd87026ad8
backing out changes. looks like this stuff is untested in a full build.
1999-11-05 03:31:04 +00:00
cls%seawood.org
9c777b0938
Fix for the template variable change from <T> to <nsISupports>. r=dougt
1999-11-05 03:11:03 +00:00
dougt%netscape.com
477a69da9d
Fix for 17842. Make nsCOMPtr<nsISupports> should not be weak typed. scc's
...
this change to me and since he is on vacation until monday and I need this
for an M11 bug, I am checking it in. I am hoping it is the right
thing to do.
a=brendan.
1999-11-05 02:18:46 +00:00
dveditz%netscape.com
04c2ee43f4
shutting up copious warnings using /W4 on MSVC
1999-11-03 07:39:19 +00:00
tbogard%aol.net
209f598dcb
Second phase of changing NS_ENSURE() to NS_ENSURE_TRUE() and NS_ENSURE_NOT() to NS_ENSURE_FALSE(). r=hyatt
1999-11-02 01:18:52 +00:00
alecf%netscape.com
649ac66265
cleanup NS_IMPL_MODULE and friends
...
- define new nsModuleComponentInfo and use it instead of components_t
- use size_t instead of unsigned int
- add some docs
- allow user to define own module name
1999-11-02 01:12:32 +00:00
tbogard%aol.net
3d60c7ebb0
Changed NS_ENSURE to be NS_ENSURE_TRUE. Also changed NS_ENSURE_NOT to be NS_ENSURE_FALSE. Left NS_ENSURE and NS_ENSURE_NOT, but they will soon be going away.
1999-11-01 06:59:16 +00:00
scc%netscape.com
b2c12428df
changed the mechanism underlying |do_QueryInterface| to decouple |nsCOMPtr| from services, |nsIWeakReference|, etc. This change fixes bug #17364 , and paves the way for making |nsCOMPtr| cooperate with services. r=valeski (additional builds done by dmose and syd)
1999-10-31 00:35:48 +00:00
valeski%netscape.com
aad867ad42
15590, r=kipp. added a nsCStringArray class so the cool string array functionality could be used for CStrings too. this checkin is *part* of a fix to the bug
1999-10-29 20:47:17 +00:00
tbogard%aol.net
0d9a9d8ba4
Just added support for an NS_IMPL_ISUPPORTS 7 - 10.
1999-10-25 03:42:10 +00:00
tbogard%aol.net
8d8ce920cb
Just added support for an NS_IMPL_ISUPPORTS6.
1999-10-23 06:55:45 +00:00
waterson%netscape.com
8241422540
Bug 16105. (Bugsplat 366256.) Ensure that nsISupports::Release() calls dtor only once by 'stabilizing' refcnt to a non-zero value before invoking the dtor. See also news://news.mozilla.org/37FD0F3C.3078AE5C%40netscape.com. r=scc,fur
1999-10-12 02:10:08 +00:00
putterman%netscape.com
07068ab854
Create a version of NS_GENERIC_FACTORY_CONSTRUCTOR that lets you pass in
...
an initialization function. No bug. Reviewed by dp.
1999-10-10 22:30:55 +00:00
kipp%netscape.com
65f6ba5343
Cleanup moz-decl-counter usage and fix NS_LOG_ADDREF usage
1999-10-08 20:41:19 +00:00
warren%netscape.com
8c71c45537
Fixed AddRef/Release problems to eliminate negative refcounts in Bloaty.
1999-10-08 01:49:06 +00:00
alecf%netscape.com
85fe25d739
add new NS_xxx_MODULE* macros (not used anywhere in the build just yet)
1999-10-08 00:12:29 +00:00
warren%netscape.com
37676fadb0
Added 'Bloaty' refcounting and memory bloat statistics code
1999-10-07 21:50:20 +00:00
waterson%netscape.com
2efd076b82
Bug 15367. Dump 'class' instead of 'file/line' for NS_LOG_REFCNT. r=shaver,dp
1999-10-05 00:07:54 +00:00
kipp%netscape.com
a5969c2c3f
r=brendan; applied changes recommended by brendan
1999-10-04 23:35:51 +00:00
tbogard%aol.net
fa4392cf29
Changed NS_ENSURE* macros to use the new NS_WARN_IF_FALSE instead of the NS_ERROR. r=shaver.
1999-10-01 04:34:03 +00:00
beard%netscape.com
effe837ad8
fix breakage on Mac, r=kipp
1999-09-30 22:45:23 +00:00
beard%netscape.com
77f45de475
fix breakage on Mac
1999-09-30 22:30:32 +00:00
kipp%netscape.com
573461a95a
Whoops. Fixed
1999-09-30 22:21:31 +00:00
kipp%netscape.com
556d538c8f
Added in new nsDebug macros
1999-09-30 21:39:31 +00:00
shaver%netscape.com
b42e435cb0
add componentType to nsIModule::RegisterSelf
1999-09-22 03:18:27 +00:00
scc%netscape.com
ac2969608f
Made a protected method for severing weak references early
1999-09-21 20:20:04 +00:00
warren%netscape.com
1eba29ca37
fixed mismatched free issues with nsID::ToString
1999-09-20 20:52:12 +00:00
alecf%netscape.com
456a51b989
add new query_interface4 and query_interfac5 (hey, I needed it!)
1999-09-13 23:23:20 +00:00
shaver%netscape.com
aee3857b3b
teach component manager that there are non-native entries in the registry
1999-09-07 23:18:47 +00:00
akkana%netscape.com
072e662a0d
Print all warning messages on stdout, not just assertions
1999-09-07 19:15:10 +00:00
shaver%netscape.com
e43f44b24b
put back <string.h> until we find all the uses =(
1999-09-06 21:22:36 +00:00
shaver%netscape.com
ac29ce202f
remove gratuituous <string.h> include
1999-09-06 18:35:03 +00:00
shaver%netscape.com
6cecf4c569
convert to CreateInstanceFromProgID
1999-09-05 06:27:42 +00:00
kipp%netscape.com
948ad27a21
Reworked sizeof api's to be much more useful; updated implementations to match
1999-08-31 03:04:37 +00:00
scc%netscape.com
2162d2e029
some small documentation changes, plus removed a function that was otherwise unused, and was confusing Solaris.
1999-08-26 10:45:50 +00:00
tbogard%aol.net
84fb0f88b5
Added a couple of new macros to the NS_ENSURE family. NS_ENSURE_SUCCESS(res, ret). It ensures that a given result is an XPCOM success code, if not returns back whatever you pass in ret. And NS_ENSURE_NO_AGGREGATION(outer) checks to make sure the instantiating client is not trying to do aggregation and returns back an error if it is.
1999-08-25 14:03:25 +00:00
tbogard%aol.net
80ec2cfdfb
Removed the #ifdef DEBUG around the definition of NS_ENSURE. The only difference between the two was the NS_ERROR. NS_ERROR is already conditional upon debug so this was a bit redundant.
1999-08-25 03:16:23 +00:00
tbogard%aol.net
7b7e859ba3
Fixed NS_ENSURE macros to use PR_BEGIN_MACRO and PR_END_MACRO. Also removed indentation before #.
1999-08-24 00:48:43 +00:00
scc%netscape.com
68340a37ef
got rid of |NS_IMPL_ISUPPORTS|, where possible, in favor of |NS_IMPL_ISUPPORTS0| or ...1 according to the specific use; got rid of |NS_DEFINE_IID| where possible, or where it should have been |NS_DEFINE_CID|; fixed bad implementations of |QueryInterface|, where possible. Built, tested apprunner, reviewed the changes with hyatt (since he was around to look) before checking in
1999-08-23 10:14:16 +00:00
scc%netscape.com
504c1add4e
fixed tabs
1999-08-23 10:07:16 +00:00
mccabe%netscape.com
381fb81c4f
Replace manual method declarations in implementations of xpcom/ interfaces with NS_DECL_NSIFOO.
1999-08-22 11:25:50 +00:00
scc%netscape.com
dd71a6971a
fixed ambiguous static cast in the NS_IMPL_QUERYINTERFACE2 case
1999-08-21 22:33:15 +00:00
jband%netscape.com
e7f612af72
fix bustage due to ambiguity in use of static_cast
1999-08-21 22:03:39 +00:00
scc%netscape.com
21a9c44373
Bad merge left two copies of ...QUERYINTERFACE2. Sorry.
1999-08-21 20:39:59 +00:00
scc%netscape.com
20c45cddb6
Added NS_IMPL_QUERY_INTERFACE[01]; fixed NS_IMPL_QUERY_INTERFACE2; added NS_IMPL_ISUPPORTS[01]; can't fix NS_IMPL_QUERY_INTERFACE without changing a ton of files, so I'm checking in this partial fix first. Then people can help me switch us away from NS_IMPL_ISUPPORTS and NS_IMPL_QUERY_INTERFACE. Both are now deprecated.
1999-08-21 20:22:35 +00:00
scc%netscape.com
0ea67f445d
added license, fixed tabs
1999-08-21 20:07:27 +00:00
tbogard%aol.net
ada1396491
XPCOM Cleanup: Added macros to make checking arguments and state upon entering interface boundaries easier.
1999-08-19 05:32:15 +00:00
scc%netscape.com
0921e3bfc2
renamed to QueryReferent, do_QueryReferent, etc.
1999-08-13 23:00:58 +00:00
danm%netscape.com
bd95ca26db
fix WeakReference exporting for Windows. a:chofmann r:scc.
1999-08-11 23:48:08 +00:00
sspitzer%netscape.com
0fc6c99e2d
fix warnings
1999-08-05 19:47:10 +00:00
scc%netscape.com
2e0d0f92ea
experiment: I don't think it like the forward declaration
1999-08-03 10:44:12 +00:00
scc%netscape.com
f311d065ca
well, now it needs to include nsCOMPtr, since the header doesn't anymore
1999-08-03 08:34:17 +00:00
scc%netscape.com
264a0e83ae
Moved the typedef to its own file: "nsWeakPtr.h". This avoids the circular includes problem and lets people #include just "nsWeakPtr.h" when they want an |nsWeakPtr|.
1999-08-03 08:15:31 +00:00
scc%netscape.com
f8db1fc479
OK, now only nsCOMPtr.h includes nsIWeakReference, and not the other way around. I'll probably have to make a header file just to contain the one-line typedef I moved.
1999-08-03 08:10:08 +00:00
scc%netscape.com
4756a19b59
Well, not everybody could do it just from the forward declared class. Yes, nsCOMPtr.h and nsIWeakReference.h include eachother, but it works anyway (they test for already being included).
1999-08-03 07:44:53 +00:00
scc%netscape.com
ea78a0060a
Added |do_QueryReference| for initializing/assigning from |nsWeakPtr|s. Also some fixes.
1999-08-03 07:21:39 +00:00
scc%netscape.com
e16adcb40a
getting ready to build
1999-08-03 04:59:47 +00:00
scc%netscape.com
fbc8779752
First Checked In.
1999-08-03 03:41:27 +00:00
jband%netscape.com
ff192b13a2
fix this macro that no one is using so that I can use it in my factory in xpconnect
1999-07-31 00:14:55 +00:00
jband%netscape.com
b80f98a64a
differentiate between Win32 x86 and NT Alpha for a few low level debug activities. From bob meader <bob@guiduck.com>
1999-07-24 22:00:00 +00:00
scc%netscape.com
2a0eda4e69
Allow explicit disabling of |...TEST_DONTQUERY_CASES| and |...DEBUG_PTR_TYPES| on the command-line for problematic compilers like QNX et al. This allows me to fix the QNX build, and provide an answer to some people compiling with the Sun Workshop.
1999-07-22 21:09:49 +00:00
scc%netscape.com
89652d3a1f
switching back to the stricter declaration of |nsDerivedSafe<T>::operator=()|. Since I removed |nsISupportsArray::operator=()|, all should be well. I left the old declaration in but commented out, just in case. I hope I don't have to conditionalize this wth an autoconf test. I've built this (with the help of several other people including mjudge, waqar, slamm, et al) on as many other platforms as I could. This declaration is intended to stop people from declaring an |operator=()| in their (XP)COM interface classes.
1999-07-22 20:03:42 +00:00
brendan%mozilla.org
b5c49d66b9
- Fix possessive "its" misspelled as "it's".
...
- Use if statements rather than ?: with 0 "else part" after the : in macros
whose bodies are statements anyway (and already protected by PR_BEGIN_MACRO
and PR_END_MACRO).
- Such if statements test for non-null pointers, so the subsequent statements
to null those pointers can move into the then parts -- there's no point in
setting a null pointer to null again.
1999-07-17 03:32:39 +00:00
warren%netscape.com
84bd74a4fd
Big changes for Necko load groups. Things are much happier now. Now images work (on pages, but not in chrome).
1999-07-16 11:14:36 +00:00
mccabe%netscape.com
07f00c67ca
Remove vestiges of XPIDL_JS_STUBS (no longer used or implemented by xpidl-generated files.)
1999-07-16 01:20:03 +00:00
scc%netscape.com
a9bb3d6a16
new feature lets you `see past' |nsISupports| in |nsCOMPtr|s. Now in the debugger (in debug versions only) you will see the actual type of the object. This is enabled by defining the preprocessor symbol |NSCAP_FEATURE_DEBUG_PTR_TYPES|. It cannot be turned on in non-debug builds. It is currently on in debug builds by default. It may become a feature that has to be enabled with a build command line switch.
NSCAP_FEATURE_ALLOW_RAW_POINTERS is now always the case and no longer optional; NSCAP_FEATURE_ALLOW_COMPARISONS is now always the case and no longer optional; cleaned up the previous definition and invocations of the |Assert_NoQueryNeeded| test.
1999-07-15 03:59:09 +00:00
scc%netscape.com
ab2352e498
switched over to _not_ using |__comobject|. Adjusted assembly to skip extra vtable header, and fixed inheritance in |nsISupports|
1999-07-15 03:02:01 +00:00
mscott%netscape.com
607ea9e584
Rewrite NS_IMPL_THREADSAFE_ADDREF and NS_IMPL_THREADSAFE_RELEASE in cross platform way instead of having separate
...
implementations for windows and everyone else. They are now written to use PR_AtomicIncrement and PR_AtomicDecrement.
this meant adding #include "pratom.h".
A side effect of this change is that no one needs to include "windows.h" in .cpp files which were implementing threadsafe
interfaces. You used to have to do this before with the old implementations.
1999-07-02 20:18:20 +00:00
jband%netscape.com
0938e9a7df
quick fix for bug 9250 - assert on startup
1999-06-30 07:13:26 +00:00
scc%netscape.com
0dfaa19773
all the changes are in, time to remove the #undef line so the traits class can do the right thing on platforms that support template specialization
1999-06-30 01:40:21 +00:00