Commit Graph

56 Commits

Author SHA1 Message Date
Kyle Huey
409e1cc43d Bug 845441: Remove DEBUG_CC. r=mccr8 2013-02-26 13:34:32 -08:00
Chris Peterson
481aeddb5f Bug 839962 - Part 1: Replace some XPCOM refcount NS_ASSERTIONs with MOZ_ASSERTs. r=bsmedberg 2013-02-07 20:50:05 -08:00
Benoit Jacob
86dd08b226 Bug 832831 - Make NS_ASSERT_OWNINGTHREAD_AND_NOT_CCTHREAD fatal - r=khuey 2013-01-25 13:40:38 -05:00
Trevor Saunders
f8c71d8f54 bug 819215 - make NS_IMPL_CYCLE_COLLECTION_XXXCLASS unnecessary r=smaug, mccr8 2012-12-08 00:08:37 -05:00
Benoit Jacob
ee1217da86 Bug 806279 - CC macros refactoring: part 3: fold the TRAVERSE_NATIVE and AMBIGUOUS cases - r=mccr8,smaug 2012-11-15 02:32:39 -05:00
Jacek Szpot
0b35b0e3d8 Bug 792180 - Replace NS_{UN,}LIKELY with MOZ_{UN,}LIKELY; r=ehsan 2012-10-26 15:32:10 +02:00
Olli Pettay
6e4f7ab3ea Bug 784563 - Investigate being lazier about removing things from the purple buffer, r=mccr8 2012-09-08 13:46:48 +03:00
Luqman Aden
cbf3f0b1fd Bug 786008 - Add a debug check to make sure that QueryInterface implementations always handle nsISupports; r=ehsan 2012-08-28 12:33:47 -04:00
Andrew McCreight
62325fa9f3 Bug 750570, part 4 - Switch most native CC classes to use the purple buffer. r=smaug
This patch actually converts over most of the existing native CC classes
to use the participant. This is done by converting them to use
the newly generalized nsCycleCollectingAutoRefCnt instead of their usual
ref count.

This is mostly a matter of defining new macros defining AddRef() and Release()
for native CC classes with the CC ref count.

nsTimeout is left as a legacy native CC class because it is a weird class,
but hopefully eventually it too can be converted over.  See bug 774874.
2012-08-24 09:50:06 -07:00
Andrew McCreight
8a3dddeebf Bug 750570, part 3 - Remove unused stabilizeForDeletion argument. r=smaug
This argument isn't used, and would have to have its type changed
to support native purple buffer participants, so we just remove it.
2012-08-24 09:50:06 -07:00
Andrew McCreight
018c2b4d42 Bug 750570, part 2 - Add purple buffer support for non-nsISupports classes. r=smaug
We add a new field to purple buffer entries, to store the participant for
non-nsISupports classes. For nsISupports, we store NULL instead. The participant
has to be passed into Suspect2.

In the cycle collector itself, we generalize canonicalization to handle the
possibility that we can just grab the participant directly from a field,
rather than needing to QI something.

Most of the patch is just routing around this extra pointer.
2012-08-24 09:50:06 -07:00
Ehsan Akhgari
0fd9123eac 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
Aryeh Gregor
e806eeab4f Bug 777292 part 2 - Change all nsnull to nullptr 2012-07-30 17:20:58 +03:00
Jonathan Watt
6380335603 Bug 767388 - Kill NS_DEBUG. r=bz.
--HG--
extra : rebase_source : d045208a26345712dbb4628c973c616cd9504f28
2012-06-25 20:59:42 +01:00
Josh Matthews
af8add48b2 Bug 722845 - Part 2: Generalize channel private browsing information to a PB consumer interface. r=jduell 2012-05-24 16:31:54 +01:00
Gervase Markham
ca171eec44 Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Andrew McCreight
e462a99306 Bug 738769 - only unmark purple if purple. r=smaug 2012-03-26 09:57:29 -07:00
Olli Pettay
a194588f7c Bug 716518 - Add skip* phases to cycle collector, r=mccr8
--HG--
extra : rebase_source : c53a42bbbc430384df37d0aeb0d882c09665f672
2012-01-14 18:58:05 +02:00
Kyle Huey
8c6df8a8e6 Fix Bug 700512. r=sicking,bsmedberg 2011-11-18 10:19:44 -05:00
Ehsan Akhgari
7e4b277a75 Bug 689397 - Work around the broken-ness of gcc4.2 on Mac which causes the protection implemented in bug 666414 not take effect; r=bsmedberg 2011-09-26 20:45:25 -04:00
Michael Wu
d8e503c38b 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
Oleg Romashin
994208d9c8 Bug 682767 - Warning nsISupportsImpl.h: unused owner; r=bsmedberg 2011-08-31 13:16:13 +01:00
Jason Duell
05cec30300 Bug 646373 - Fix AdBlock2 on fennec (nsITraceableChannel.setNewListener() is unimplemented under e10s.) r=honza, a=queue 2011-05-24 02:32:26 -07:00
Peter Van der Beken
afdf1551f1 Fix for bug 584048 (Clean up cycle collection code) - remove NS_IMPL_CYCLE_COLLECTING_ADDREF_AMBIGUOUS/NS_IMPL_CYCLE_COLLECTING_RELEASE_AMBIGUOUS. r=bent. 2011-03-06 12:11:31 +01:00
Ben Turner
fca93ac512 Bug 580096 - 'move the cycle collector off the main thread'. r=peterv+jst 2010-11-11 14:52:30 -08:00
Brian Crowder
6d2f11959b Bug 567267 - Move nsIEncodedChannel logic to base Http class, r=dwitte, blocking-fennec2.0b1=mfinkle 2010-09-15 15:55:08 -07:00
Justin Lebar
3e7e1949d1 Bug 587853 - Use PR_ATOMIC_{INCREMENT,DECREMENT} macros for threadsafe addref / release. r+a2.0=bsmedberg 2010-08-17 10:25:41 -07:00
Saint Wesonga
e7a357dcaf Bug 562387 - Convert NS_NEWXPCOM/NS_DELETEXPCOM to new/delete. r=bsmedberg 2010-07-05 11:42:18 +02:00
Dão Gottwald
9b15b69a1b Backed out changeset 59ace8d80ce8 2010-07-04 22:01:13 +02:00
Saint Wesonga
8dd5da1024 Bug 562387 - Convert NS_NEWXPCOM/NS_DELETEXPCOM to new/delete. r=bsmedberg 2010-07-04 21:39:17 +02:00
Daniel Holbert
eb483b552f Bug 551298, patch A followup i: Add thread safety assertions to AddRef/Release implementations. r=bsmedberg 2010-04-01 11:05:40 -07:00
Daniel Holbert
5192e33d44 Bug 551298, patch A: Move THEBES_INLINE_DECL_REFCOUNTING to xpcom (with s/THEBES/NS/). r=bsmedberg 2010-04-01 11:05:40 -07:00
Daniel Holbert
56db19649c Backed out changeset fe801c8a2090 (Bug 551298) due to Linux debug mochitest-5 orange 2010-04-01 09:40:30 -07:00
Daniel Holbert
ef92ece024 Bug 551298, patch A: Move THEBES_INLINE_DECL_REFCOUNTING to xpcom (with s/THEBES/NS/). r=bsmedberg 2010-04-01 08:07:23 -07:00
Benjamin Smedberg ext:(%2C%20L.%20David%20Baron%20%3Cdbaron%40dbaron.org%3E)
699dcb26a7 Add runtime NS_IsMainThread checks to protect the cycle collector's purple buffer, and make NS_IsMainThread faster on our major platforms. (Bug 521750) r=peterv 2009-10-28 10:28:57 -07:00
L. David Baron
5efb37b7c1 Make cycle collector's purple buffer consist of entries that the objects in the purple buffer can point to, and remove the notion of scan delay (which was previously set to 0). (Bug 490695) r+sr=peterv r=bsmedberg 2009-05-06 13:46:04 -07:00
Boris Zbarsky
0ed08e296f Bug 403199. Don't log addref/release of nsSimpleNestedURI, becuse it doesn't work right when someone addrefs the derived class but releases the base class canonical nsISupports, due to aggregation. r=dbaron 2009-04-09 14:01:16 -04:00
Arpad Borsos
d68db2352e Bug 451477 - NS_INTERFACE_TABLE_INHERITED10 defined twice; r=benjamin 2008-09-06 23:47:54 +02:00
timeless@mozdev.org
d7e775a7be Bug 394114 Interfaces missing from various QI implementations. r=jag sr=jag a=dsicore 2008-04-06 05:28:34 -07:00
timeless@mozdev.org
f33eb4a3b4 reverting, wrong patch, missing AMBIGUOUS 2008-03-19 14:55:22 -07:00
timeless@mozdev.org
8074fda8ae Bug 394114 Interfaces missing from various QI implementations. r=jag sr=jag a=dsicore 2008-03-19 14:19:35 -07:00
dbaron@dbaron.org
9eacf21f91 Fix -Wconversion warnings that prevent compiling netwerk/cookie/src/ (which makes warnings fatal) with gcc 4.3 on x86_64. b=409384 r=bsmedberg a=beltzner 2008-03-06 15:03:50 -08:00
jag@tty.nl
925a01f85a Fix bustage from previous checkin for bug 392055. Move #define of XPCOM_GLUE_AVOID_NSPR from nsISupportsImpl.h to nscore.h. r/a=bsmedberg 2007-09-28 13:33:32 -07:00
bzbarsky@mit.edu
03372522d9 Make HTML content objects use QI tables. Bug 389797, r+sr=jst, a=sicking. 2007-08-20 15:55:06 -07:00
benjamin@smedbergs.us
0e047142a4 Bug 386025 - Expose cycle-collection symbols, r=graydon 2007-08-06 07:34:02 -07:00
dtownsend@oxymoronical.com
ebfa6d5d6b Bug 390143: NS_IMPL macros are broken for implementing 11 interfaces.
r=bsmedberg, a=wanted-1.9
2007-08-02 11:14:28 -07:00
bzbarsky@mit.edu
dc8de3f8f7 Reland part of the patch for bug 330420 which got backed out by the
table-driven QI landing.  Bug 387926, r+sr=bsmedberg
2007-07-24 13:17:11 -07:00
neil@parkwaycc.co.uk
11ed13d71f Followup to bug 348748 to fix the alignment of trailing backslashes in macros
[xxx_cast<foo*>(bar) is three characters shorter than NS_XXX_CAST(foo*, bar)]
2007-07-11 01:46:44 -07:00
jwalden@mit.edu
e3c4baccae 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. 2007-07-08 00:08:04 -07:00
dbaron@dbaron.org
c406f481be Keep the purple bit in sync with the purple buffer when suspect and forget calls are dropped on the floor. b=385548 r=graydon 2007-06-27 10:51:48 -07:00