Andrew McCreight
d2ec8127e0
Bug 1279609 - nsRunnableMethodImpl should use a non-public destructor. r=froydnj
2016-07-05 12:03:18 -07:00
Nathan Froyd
f7ee3c3dbf
Bug 1281626 - part 5 - move nsRunnableFunction into mozilla::detail and rename it; r=khuey
...
We do this for similar reasons as nsRunnableMethod*: less prefixing and
a more obvious signal that this is a private implementation class.
2016-06-28 22:24:54 -04:00
Nathan Froyd
65715152b1
Bug 1281626 - part 4 - change NS_NewRunnableFunction to return already_AddRefed; r=khuey
...
This change makes it more consistent with NS_NewRunnableMethod and also
opens up optimization opportunities for later.
2016-06-28 22:24:54 -04:00
Nathan Froyd
f624e16333
Bug 1281626 - part 2 - make RunnableMethod* internals final classes; r=khuey
...
This step is mostly tidiness.
2016-06-28 22:24:54 -04:00
Nathan Froyd
bcf3920031
Bug 1281626 - part 1 - move nsRunnableMethod* into mozilla::detail and rename them; r=khuey
...
Less ns-prefixing is more better. Also, this renaming makes clearer
that these classes are private implementation details, which is good,
because we're going to take advantage of that fact in a bit.
2016-06-28 22:24:54 -04:00
Gerald Squelart
e8513ef5ee
Bug 1271593 - NS_NewRunnableFunction should forward its arg - r=froydnj
...
By perfect-forwarding its argument, we can automatically gain move semantics
optimization when storing the given function object into nsRunnableFunction.
Also it allows movable-only function objects.
Note that any reference is removed from the type to be stored, so that the
runnable always contain a concrete function object.
MozReview-Commit-ID: 9EZK84ZhMvR
--HG--
extra : rebase_source : e1f87c3284fda4df6d13839ea6a0b0c2ce196833
2016-06-02 01:21:36 +02:00
L. David Baron
fc6592bdbc
Bug 1271182 - Add some deleted assignment operators and copy constructors. r=khuey
...
These are generally good practice for reference-counted objects; they
catch cases where these operations are used by accident, breaking
reference-counting.
This doesn't show any existing problems, though.
MozReview-Commit-ID: EvRkNCymOqT
2016-05-25 18:04:35 -07:00
Kyle Huey
941ab1f522
Bug 1268313: Part 7 - Move NS_NewRunnableMethod and friends to mozilla::NewRunnableMethod. r=froydnj
2016-05-05 01:45:00 -07:00
Kyle Huey
7c2af31504
Bug 1268313: Part 5 - Make NS_NewRunnableMethod able to call const functions. r=froydnj
2016-05-05 01:44:59 -07:00
Kyle Huey
156b8c1933
Bug 1268313: Part 4 - Replace NewCancelableRunnableMethod with NS_NewCancelableRunnableMethod. r=froydnj
2016-05-05 01:44:59 -07:00
Kyle Huey
7f54121b91
Bug 1268313: Part 3 - Replace some NewCancelableRunnableMethod with NS_NewNonOwningCancelableRunnableMethod. r=froydnj
2016-05-05 01:44:59 -07:00
Carsten "Tomcat" Book
5d43a44ec6
Backed out changeset 3f2f3fcac66b (bug 1268313)
...
--HG--
extra : rebase_source : 438e7d7077b900ef252bd628f4559424eebd211f
2016-04-29 14:21:23 +02:00
Carsten "Tomcat" Book
4bb6f48de3
Backed out changeset 6a8d57e8fa8e (bug 1268313)
...
--HG--
extra : rebase_source : 8690897fd41073f22c8b25db5e8ce88df76a2bb7
2016-04-29 14:21:22 +02:00
Carsten "Tomcat" Book
894326b653
Backed out changeset 726f7361e0b8 (bug 1268313)
...
--HG--
extra : rebase_source : 3e04a6751a1cce2be7692763b4520dcca053f210
2016-04-29 14:21:20 +02:00
Carsten "Tomcat" Book
ba3fe0975c
Backed out changeset 85ce8cb0639a (bug 1268313)
...
--HG--
extra : rebase_source : 56d1cf41a2dc4959b67f834e07192a5c772176a8
2016-04-29 14:21:16 +02:00
Kyle Huey
48a594a09e
Bug 1268313: Part 7 - Move NS_NewRunnableMethod and friends to mozilla::NewRunnableMethod. r=froydnj
2016-04-28 14:08:25 -07:00
Kyle Huey
732a15e600
Bug 1268313: Part 5 - Make NS_NewRunnableMethod able to call const functions. r=froydnj
2016-04-28 14:08:24 -07:00
Kyle Huey
c724d0c867
Bug 1268313: Part 4 - Replace NewCancelableRunnableMethod with NS_NewCancelableRunnableMethod. r=froydnj
2016-04-28 14:08:24 -07:00
Kyle Huey
a13954d079
Bug 1268313: Part 3 - Replace some NewCancelableRunnableMethod with NS_NewNonOwningCancelableRunnableMethod. r=froydnj
2016-04-28 14:08:24 -07:00
Kyle Huey
c73656947b
Bug 1265927: Move nsRunnable to mozilla::Runnable, CancelableRunnable to mozilla::CancelableRunnable. r=froydnj
2016-04-25 17:23:21 -07:00
Kyle Huey
2709afd167
Bug 1263311: Part 3 - s/nsCancelableRunnable/CancelableRunnable/g. r=froydnj
2016-04-11 11:40:06 -07:00
Kyle Huey
1cc02aa8c6
Bug 1263311: Part 1 - Change the nsICancelableRunnable interface. r=froydnj
2016-04-11 11:40:06 -07:00
Wes Kocher
7d2cebe912
Backed out 3 changesets (bug 1263311) for Windows build failures in ServiceWorkerPrivate.cpp CLOSED TREE
...
Backed out changeset 0434a548e1fe (bug 1263311)
Backed out changeset 60b1be29446c (bug 1263311)
Backed out changeset 18132498bc40 (bug 1263311)
MozReview-Commit-ID: LPEa05QobdQ
2016-04-11 12:50:56 -07:00
Kyle Huey
d200ed89d0
Bug 1263311: Part 3 - s/nsCancelableRunnable/CancelableRunnable/g. r=froydnj
2016-04-11 11:40:06 -07:00
Kyle Huey
f13a6fc866
Bug 1263311: Part 1 - Change the nsICancelableRunnable interface. r=froydnj
2016-04-11 11:40:06 -07:00
Botond Ballo
5a57a5b196
Bug 1163320 - Variadic implementation of nsRunnableMethodArguments. r=froydnj
...
MozReview-Commit-ID: 13YyOyiionD
--HG--
extra : rebase_source : 89a0ad0877ed3290a41288523fe9b13d9c5bac7d
extra : source : ed761807105b30069d5a7412f8dacf75429eeeb6
2015-05-11 17:24:21 -04:00
Nathan Froyd
01583602a9
Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
...
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout. The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.
CLOSED TREE makes big refactorings like this a piece of cake.
# The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
xargs perl -p -i -e '
s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
s/nsRefPtr ?</RefPtr</g; # handle declarations and variables
'
# Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h
# Handle nsRefPtr.h itself, a couple places that define constructors
# from nsRefPtr, and code generators specially. We do this here, rather
# than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
# things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
mfbt/nsRefPtr.h \
xpcom/glue/nsCOMPtr.h \
xpcom/base/OwningNonNull.h \
ipc/ipdl/ipdl/lower.py \
ipc/ipdl/ipdl/builtin.py \
dom/bindings/Codegen.py \
python/lldbutils/lldbutils/utils.py
# In our indiscriminate substitution above, we renamed
# nsRefPtrGetterAddRefs, the class behind getter_AddRefs. Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'
if [ -d .git ]; then
git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi
--HG--
rename : mfbt/nsRefPtr.h => mfbt/RefPtr.h
2015-10-18 01:24:48 -04:00
Xidorn Quan
7ba467bc22
Bug 1186745 part 6 - Fix event leak when using NS_DispatchToCurrentThread. r=froydnj
...
--HG--
extra : source : c8159664670c96e6cfa4c856d6eb14bb9495cd6f
2015-10-06 13:00:59 +11:00
Wes Kocher
1d312920f4
Backed out 6 changesets (bug 1186745) for android Cpp failures
...
Backed out changeset 237a6acf0709 (bug 1186745)
Backed out changeset 7b530871783a (bug 1186745)
Backed out changeset 73f73b531fc8 (bug 1186745)
Backed out changeset e36909748ddf (bug 1186745)
Backed out changeset 3a31df8787f0 (bug 1186745)
Backed out changeset df9cb8f5f0a5 (bug 1186745)
2015-10-02 10:35:09 -07:00
Xidorn Quan
863594b840
Bug 1186745 part 6 - Fix event leak when using NS_DispatchToCurrentThread. r=froydnj
...
--HG--
extra : source : a0baaf79582846e447014b2e933266c3150941aa
2015-10-03 00:18:24 +10:00
Phil Ringnalda
c096566a7e
Back out 6 changesets (bug 1186745) for cpptest failure in runnable_utils_unittest, nrappkit_unittest, test_nr_socket_unittest
...
Backed out changeset c6142b815de0 (bug 1186745)
Backed out changeset d8f740ef2430 (bug 1186745)
Backed out changeset edc0b56d81fa (bug 1186745)
Backed out changeset 383f8ac033ea (bug 1186745)
Backed out changeset ce960a661987 (bug 1186745)
Backed out changeset 3e9783023fb2 (bug 1186745)
--HG--
extra : rebase_source : 4681d6abaaa927ddb863f944efc87e6c6f6c2e26
2015-09-28 19:05:02 -07:00
Xidorn Quan
e26e72c529
Bug 1186745 part 6 - Fix event leak when using NS_DispatchToCurrentThread. r=froydnj
...
--HG--
extra : source : 839c394ca2362db534c9a12b14be3a9f3f5d6ff5
2015-09-29 09:28:22 +10:00
Nathan Froyd
c6d5ee54fb
Bug 1179787 - part 2 - add template logic for smart pointer template arguments in NS_NewRunnableMethod*; r=botond
2015-07-02 11:17:49 -04:00
Nathan Froyd
8ddd161b85
Bug 1179787 - part 1 - forward StorensRefPtrPassByPtr's constructor argument; r=botond
...
StorensRefPtrPassByPtr is currently used for storing reference-counted
types passed as T* template arguments to NS_NewRunnableMethodWith*.
We'd also like to use it to store nsRefPtr<T> template arguments. While
it could be used in its current form, it'd be better for its constructor
to support forwarding, so that something like:
NS_NewRunnableMethodWithArg<nsRefPtr<T>>(..., nsRefPtr<T>(local));
doesn't cause unnecessary reference counting.
2015-07-02 11:05:52 -04:00
Ehsan Akhgari
7a81d59cb2
Bug 1188203 - Fix more constructors in XPCOM; r=froydnj
2015-07-28 12:24:37 -04:00
Randell Jesup
c87c478f4f
Bug 1155059: Patch 1&2 - Convert Dispatch() and friends to already_AddRefed<> r=froydnj
...
Modify Dispatch IDL and code to deal with MSVC issues with overloaded templates r=froydnj
2015-07-09 23:21:46 -04:00
Ryan VanderMeulen
8e70b92b80
Backed out changeset c1cd7aff7c94 (bug 1163320) for causing silent Hazard build bustage.
...
--HG--
extra : rebase_source : 34f9d17d9c9c3b2bfd5bd8d4be48a05acc0c5908
2015-06-03 12:46:19 -04:00
Botond Ballo
a1ee749697
Bug 1163320 - Variadic implementation of nsRunnableMethodArguments. r=froydnj
...
--HG--
extra : source : ed761807105b30069d5a7412f8dacf75429eeeb6
2015-05-11 17:24:21 -04:00
Cervantes Yu
55152ad9d9
Backout change 39e167bbd14c, a80140872ea5, adae9be2294d and b71ccef9c674 (bug 970307).
2015-05-19 14:31:25 +08:00
Carsten "Tomcat" Book
005c5ce415
Backed out changeset 4d2839eea957 (bug 970307)
2015-05-19 11:44:27 +02:00
Cervantes Yu
a12ce249b1
Backout change 39e167bbd14c, a80140872ea5, adae9be2294d and b71ccef9c674 (bug 970307).
...
--HG--
extra : rebase_source : 829e80228e07440285383316d2c4fea017828529
2015-05-19 14:31:25 +08:00
Gerald Squelart
2b1b8b1729
Bug 1153295 - Select StorensRefPtrPassPtr for types with AddRef and Release methods. r=nfroyd
2015-04-26 04:52:00 -04:00
Cervantes Yu
4f02100ffd
Backed out 2 changesets (bug 1138620
)
...
Backed out changeset e60b4b01c05d (bug 1138620
)
Backed out changeset 52d49dd25d6d (bug 1138620
)
2015-04-24 15:05:44 +08:00
Cervantes Yu
d827320379
Bug 1138620
- Part 1: Allow binary modules to create unmonitored threads that doesn't keep the Nuwa process from stabalization. r=nfroyd
2015-04-21 18:23:09 +08:00
Kartikaya Gupta
d7702657e5
Bug 1152753 - Add a wrapper to be able to dispatch C++11 lambdas to nsIThread. r=froydnj
2015-04-10 08:13:00 -04:00
Kartikaya Gupta
f7dbd8ca43
Bug 1146349 - Allow NS_NewRunnableMethodWithArgs to take up to 8 arguments. r=froydnj
2015-04-14 11:36:35 -04:00
Kartikaya Gupta
0f4033d26f
Back out cset 35cae02f1552 (bug 1152753) because it introduces a footgun. r=me
2015-04-10 12:13:55 -04:00
Kartikaya Gupta
1cc7ec6936
Bug 1152753 - Add a wrapper to be able to dispatch C++11 lambdas to nsIThread. r=froydnj
2015-04-10 08:13:00 -04:00
Ben Kelly
c32262c9c1
Bug 1142852 P1 Fix NS_NewNonOwningRunnableMethodWithArgs() so that it compiles. r=froydnj
2015-03-23 22:28:09 -04:00
Nathan Froyd
e7363b8b6b
Bug 1141692 - use an actual Atomic for nsThreadPoolNaming::mCounter; r=bsmedberg
...
Marking a variable as volatile is never the right thing to do when
dealing with threads. Use real atomic accesses instead.
2015-03-10 14:41:45 -04:00