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

23 Коммитов

Автор SHA1 Сообщение Дата
Alex Gaynor 0f01791ffc Bug 1512990 - Part 4 - remove declarations of Recv/Answer methods from IPDL protocol base class; r=froydnj
For cases where the class has direct calls (that is, we cast `this` to the
subclass before making the call) no longer declare Recv/Answer methods on the
base class at all. This should ensure that slots for them are not generated in
vtables, and also allow the derived class to choose the method signature (e.g.
whether it wants to take something by reference or by value).

Differential Revision: https://phabricator.services.mozilla.com/D18132

--HG--
extra : moz-landing-system : lando
2019-02-06 15:58:43 +00:00
Alex Gaynor 984f0333ea Bug 1512990 - Part 3 - remove declarations of Alloc/Dealloc methods from IPDL protocol base class; r=froydnj
For cases where the class has direct calls (that is, we cast `this` to the
subclass before making the call) no longer declare Alloc/Dealloc methods on the
base class at all. This should ensure that slots for them are not generated in
vtables, and also allow the derived class to choose the method signature (e.g.
whether it wants to take something by reference or by value).

Differential Revision: https://phabricator.services.mozilla.com/D18131

--HG--
extra : moz-landing-system : lando
2019-02-06 15:58:07 +00:00
Alex Gaynor 75c7d1fa76 Bug 1512990 - Part 2 - implement direct calls in the IPDL compiler; r=froydnj
When calling a Recv/Alloc/Dealloc method on most types, cast `this` to the
derived class.

There is a heuristic to figure out what the correct derived type is. There is a
blacklist of types which we can't do direct calls on for the moment, as well as
an override for types that do work with direct calls but which don't match the
heuristic.

Differential Revision: https://phabricator.services.mozilla.com/D16492

--HG--
extra : moz-landing-system : lando
2019-02-06 15:57:37 +00:00
Sylvestre Ledru 265e672179 Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset

--HG--
extra : amend_source : 4d301d3b0b8711c4692392aa76088ba7fd7d1022
2018-11-30 11:46:48 +01:00
Kan-Ru Chen f8100451db Bug 1314254 - Add mozilla::ipc::IPCResult type and convert IPDL handlers to use new return type. r=billm
We will use the new type for the generated IPDL message handler
prototype to make sure correct error handling method is called.

MozReview-Commit-ID: AzVbApxFGZ0
2016-11-15 04:26:00 +01:00
Ben Kelly 62ecdfc256 Bug 1093357 P3 Convert Cache to use IPCStream and AutoIPCStream. r=asuth
* * *
Bug 1093357 P3 interdiff 001 Use AutoIPCStream in dom/cache
2016-05-15 10:32:09 -07: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
Ben Kelly 2dae6bf172 Bug 1110485 P1 Refactor Cache IPC requests to use a separate actor. r=baku 2015-04-16 12:00:15 -07:00
Ehsan Akhgari 643ab9ca43 Bug 1149987 - Part 7: Send the full ErrorResult in the AddAllResponse IPC message; r=bkelly
This is needed so that we can throw a TypeError from
FetchPut::FetchComplete.  In order to be able to do this, we need to
store the entire ErrorResult in the FetchPut object and deliver it to
the other side.
2015-04-15 15:55:39 -04:00
Carsten "Tomcat" Book fe0f813b3f Backed out changeset 19f871364039 (bug 1110485) for causing bc1 winxp memory leaks on a CLOSED TREE 2015-04-15 09:55:53 +02:00
Ben Kelly feca794ce2 Bug 1110485 P1 Refactor Cache IPC requests to use a separate actor. r=baku 2015-04-14 17:11:19 -07:00
Wes Kocher 22b792b4e2 Backed out changeset 40f48cd100a2 (bug 1110485) for frequent mochitest-1 failures CLOSED TREE
--HG--
extra : amend_source : 3c3a58e53f42afd4a0612b73115e74cc96228066
2015-04-14 15:27:48 -07:00
Ben Kelly 7a6abc9a9e Bug 1110485 P1 Refactor Cache IPC requests to use a separate actor. r=baku 2015-04-14 12:21:14 -07:00
Wes Kocher 164426c724 Backed out 3 changesets (bug 1110485) for wpt-3 bustage
Backed out changeset e8bd3bf404ff (bug 1110485)
Backed out changeset fa29dbb49a66 (bug 1110485)
Backed out changeset 12deb121d126 (bug 1110485)

--HG--
rename : dom/cache/CacheTypes.ipdlh => dom/cache/PCacheTypes.ipdlh
2015-04-13 15:18:19 -07:00
Ben Kelly c3a286e766 Bug 1110485 P1 Refactor Cache IPC requests to use a separate actor. r=baku 2015-04-13 14:05:57 -07:00
Ryan VanderMeulen d8ade60200 Backed out 5 changesets (bug 1149987) for mochitest crashes.
Backed out changeset b62e371d6189 (bug 1149987)
Backed out changeset daa762fca8e6 (bug 1149987)
Backed out changeset bdb64d5befa5 (bug 1149987)
Backed out changeset 693901a4bcde (bug 1149987)
Backed out changeset e7c41c8653c4 (bug 1149987)

CLOSED TREE
2015-04-08 11:49:49 -04:00
Ehsan Akhgari 27aa22f021 Bug 1149987 - Part 4: Send the full ErrorResult in the AddAllResponse IPC message; r=bkelly
This is needed so that we can throw a TypeError from
FetchPut::FetchComplete.  In order to be able to do this, we need to
store the entire ErrorResult in the FetchPut object and deliver it to
the other side.
2015-04-08 10:27:39 -04:00
Daniel Holbert 48c2e9bef2 Bug 1110814 followup: Add missing 'override' annotations to new methods in CacheParent. rs=ehsan 2015-03-22 10:33:56 -07:00
Ben Kelly 275609c516 Bug 1110814 P1 Implement Cache IPC actor for streaming data from child to parent. r=khuey 2015-03-22 02:52:12 -04:00
Ehsan Akhgari 883849ee32 Bug 1145631 - Part 1: Replace MOZ_OVERRIDE and MOZ_FINAL with override and final in the tree; r=froydnj
This patch was automatically generated using the following script:

function convert() {
echo "Converting $1 to $2..."
find . \
       ! -wholename "*/.git*" \
       ! -wholename "obj-ff-dbg*" \
         -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 MOZ_OVERRIDE override
convert MOZ_FINAL final
2015-03-21 12:28:04 -04:00
Ehsan Akhgari 3d44a57364 Bug 1142195 - Remove some unused class declarations in the DOM Cache code; r=bkelly 2015-03-11 16:46:15 -04:00
Daniel Holbert 76ce9ce1fc Bug 1139603: Add MOZ_OVERRIDE annotations in CacheParent.h and QuotaClient.cpp to fix clang -Winconsistent-missing-override. r=ehsan 2015-03-04 13:58:55 -08:00
Ben Kelly f9064fc636 Bug 940273 - Part 4 - Initial implementation of Service Worker Cache. r=ehsan,baku,janv 2015-03-02 14:20:00 +01:00