Commit Graph

49 Commits

Author SHA1 Message Date
Andrea Marchesini
a708d07f10 Bug 1201806 - part 2 - nsStructuredCloneContainer should use StructuredCloneIPCHelper, r=smaug 2015-09-09 08:11:38 +01:00
Andrea Marchesini
efd3b25c78 Bug 1198795 - ipc/StructuredCloneUtils should be merged with StructuredCloneHelper, r=smaug
--HG--
rename : dom/ipc/StructuredCloneUtils.cpp => dom/ipc/StructuredCloneIPCHelper.cpp
rename : dom/ipc/StructuredCloneUtils.h => dom/ipc/StructuredCloneIPCHelper.h
2015-09-02 17:20:30 +01:00
Andrea Marchesini
fdbfd864e7 Bug 1186307 - StructuredCloneHelper in workers.postMessage(), r=smaug 2015-08-27 17:19:13 +01:00
Nigel Babu
d5f46aaf6c Backed out a19daae11647 (Bug 1186307) for W8 and W4 bustage on CLOSED TREE 2015-08-27 15:04:25 +05:30
Andrea Marchesini
b68734b7da Bug 1186307 - StructuredCloneHelper in workers.postMessage(), r=smaug 2015-08-27 09:06:09 +01:00
Andrea Marchesini
cf19abf4e5 Bug 1189389 - nsIStructuredCloneContainer should use StructuredCloneHelper, r=smaug 2015-08-26 13:17:23 +01:00
Nikhil Marathe
839a3bc3fb Bug 1183954 - Fix Notification.data structured cloning on workers. r=robertbindar,mccr8
Rather than store a non-thread-safe refcounted nsIStructuredCloneContainer, store the base64 representation.
Caches a jsval the first time an attempt to access data is made from content script.

--HG--
extra : commitid : Ijd82LTJaYo
extra : rebase_source : f82e837842037ea02efae3a0fc9b2b35c2a0d7d0
2015-07-30 12:44:14 -07:00
Andrew McCreight
9e8f4b219e Bug 1152551, part 2 - Fix mode lines in dom/. r=jst 2015-05-03 15:32:37 -04:00
Sylvestre Ledru
88ebaa2020 Bug 1156662 - Identical code for different branches. r=bz
--HG--
extra : rebase_source : 4722a8dbf198f05090370235f811dccb35ce658c
2015-04-21 18:37:34 +02:00
Boris Zbarsky
9f8de4bfd5 Bug 1154366. Pass in a JSContext to StructuredCloneContainer::InitFromJSVal so it will throw its exceptions somewhere where people might see them. r=bholley 2015-04-16 13:22:15 -04:00
Bobby Holley
e3eca2660e Bug 1070696 - Rename xpc::GetNativeForGlobal to xpc::NativeGlobal and make it accept non-global JSObjects. r=smaug
The method is infallible, and making the callers invoke
js::GetGlobalForObjectCrossCompartment manually is dumb.
2014-09-21 21:31:53 +02:00
Bob Owen
325adb5305 Bug 1046647 - Part 4: Replace nsCxPusher in nsDocShell::AddState. r=bholley 2014-08-05 17:18:30 +01:00
Steve Fink
12001268c0 Bug 912456 - transferable MessagePorts, r=jorendorff
--HG--
extra : rebase_source : 5b8a2a9b261c53f0ff5a860e1dc2e7ede711105f
2013-11-14 20:42:34 -08:00
Tom Schuster
f39e81815a Bug 939294 - Change xpidl jsval to handles. r=gabor,bz,khuey,bsmedberg,terrence 2014-01-09 18:39:36 +01:00
Tom Schuster
127ebf3721 Bug 930782 - Handlify JS_WrapValue. r=terrence 2013-10-26 18:19:05 +02:00
Terrence Cole
856c484ab5 Bug 929800 - Handlify the structured clone interface; r=sfink,smaug
--HG--
extra : rebase_source : 4f21dd799ad27dc665997d4912996a500ae8a2f2
2013-10-22 17:18:32 -07:00
Nicholas Nethercote
36ec1052f2 Bug 905017 (part 2, attempt 2) - Move structured clone stuff from jsapi.{h,cpp} and jsclone.{h,cpp} to js/StructuredClone.{h,cpp}. r=billm.
--HG--
rename : js/src/jsclone.cpp => js/src/vm/StructuredClone.cpp
extra : rebase_source : 2699588c63ef58ab84bc8c63adc0487648af3834
2013-08-19 23:43:47 -07:00
Ms2ger
8040c0cadd Backout changesets 7e6fb33fdf22:c85332df4320 (bug 905017) for windows bustage. 2013-08-22 10:16:30 +02:00
Nicholas Nethercote
b62bcfa0e3 Bug 905017 (part 2) - Move structured clone stuff from jsapi.{h,cpp} and jsclone.{h,cpp} to js/StructuredClone.{h,cpp}. r=billm.
--HG--
rename : js/src/jsclone.cpp => js/src/vm/StructuredClone.cpp
extra : rebase_source : ecce9699ddb45535aa94d5e3add901f5a8620c46
2013-08-19 23:43:47 -07:00
Nicholas Nethercote
2585de9a07 Bug 905017 (part 1) - Minimize inclusions of JS engine headers in .h and .idl files. r=billm.
--HG--
extra : rebase_source : 984c61ab12f46be0509b1ce0d458d9a6e5841c64
2013-08-17 15:50:18 -07:00
Johnny Stenback
84b7ee4886 Bug 859707. Convert History to WebIDL bindings. r=bz 2013-08-09 23:47:59 -07:00
Nicholas Nethercote
d8f824e34e Bug 898914 (part 1) - Remove JSBool.
--HG--
extra : rebase_source : 2d202e0e5005a7f54724b1540481c15cde3ad52e
2013-08-08 15:53:04 -07:00
Bobby Holley
f2943090bd Bug 868130 - Remove the lion's share of JSAutoRequests in gecko. r=gabor
There are still a handful that either are used with other runtimes, or that
happen very early/late in cx the lifetime of various things where it doesn't
necessarily make sense to have a cx on the stack. This should definitely ensure
that we're not doing double-duty with the nsCxPusher change, though.
2013-05-22 10:05:28 -06:00
Bobby Holley
ff37abce70 Bug 868634 - Remove compartment entry in nsStructuredCloneContainer. r=bz
I can't see what this is supposed to be doing. The one caller defaults to aCx,
and if not, gets and pushes a context associated with the document, restoring
it to the default compartment.

So this only changes the behavior when we use the aCx that comes in from above,
in which case it's totally not clear to me why we would want to get the default
global here.
2013-05-07 14:18:03 -07:00
David Zbarsky
b7033dea1a Bug 868312: Various dom rooting fixes r=bz 2013-05-04 03:52:57 -04:00
Bobby Holley
7e45dcce35 Bug 865729 - Remove nsIJSContextStack from dom/foo. r=gabor 2013-04-29 11:16:18 -07:00
Jose Cortes
1068414e39 Bug 842186 - Replace use of jsval with JS::Value in dom/base. r=jwalden
From 1a684ed61615d32965201e55335478d5f403ac4a Mon Sep 17 00:00:00 2001
 cpp files in the dom/base/ directory. r=jwalden
---
 dom/base/Crypto.cpp                     |  3 +-
 dom/base/DOMRequest.cpp                 | 12 +++---
 dom/base/DOMRequest.h                   |  4 +-
 dom/base/Navigator.cpp                  | 10 ++---
 dom/base/nsDOMJSUtils.h                 |  6 +--
 dom/base/nsDOMWindowUtils.cpp           | 20 ++++-----
 dom/base/nsGlobalWindow.cpp             | 24 +++++------
 dom/base/nsIJSNativeInitializer.h       |  4 +-
 dom/base/nsJSEnvironment.cpp            | 73 +++++++++++++++++----------------
 dom/base/nsJSEnvironment.h              |  8 ++--
 dom/base/nsJSTimeoutHandler.cpp         |  4 +-
 dom/base/nsJSUtils.h                    |  2 +-
 dom/base/nsStructuredCloneContainer.cpp | 10 ++---
 13 files changed, 91 insertions(+), 89 deletions(-)

--HG--
extra : rebase_source : af1420550a745aba9fd6c20297ac3cd0075f5ead
2013-04-11 18:52:10 -04:00
Ms2ger
30583e01b5 Bug 845374 - Part j: Stop including nsIXPCScriptable.h in nsContentUtils.h; r=khuey 2013-03-17 08:55:15 +01:00
Bobby Holley
0619f84ac4 Bug 834732 - Make nsDocShell::AddState push the JSContext if it grabs one, and remove push in nsStructuredCloneContainer. r=mrbkap
This gets rid of one of the last consumers of REQUIRE_SCRIPT_CONTEXT.
2013-02-26 11:04:10 -08:00
Bobby Holley
03f7f4b219 Bug 834732 - Get rid of footgun bool param for nsCxPusher and use an explicit enum. r=mrbkap
The goal here is to get rid of this crap entirely, and make nsCxPusher always
push. But that's a scary change, so we do it in chunks. This patch, in particular,
should have zero behavioral change. This means preserving some very wrong behavior.
For instance, currently SafeAutoJSContext never pushes a damn thing, because the
safe JSContext doesn't have an associated nsIScriptContext. We preserve this
behavior, and in fact convert various similarly-buggy consumers to
SafeAutoJSContext, so that we can hoist the behavioral change into a subsequent
patch.
2013-02-26 11:04:09 -08:00
Nicholas Nethercote
c36dea3127 Bug 824883 - Fix three warnings in dom/ code. r=bz.
--HG--
extra : rebase_source : 3763606a23b66493596787ca33cec32618efa2f1
2012-12-26 20:24:59 -08:00
Isaac Aggrey
c984edf823 Bug 794510: Part 2: Use more stdint types instead of protypes.h types; r=ehsan 2012-10-11 18:38:04 -05:00
Andrea Marchesini
d20fd52c39 Bug 720083 - Workers: add support for transferable objects from HTML5 spec. r=sphink, r=bent 2012-10-03 18:19:22 -04:00
Phil Ringnalda
350f7a9cd9 Back out b24a73b2c617 for Windows build bustage and test_xhr_timeout.html failure 2012-09-27 21:24:42 -07:00
Andrea Marchesini
7d56919385 Bug 720083 - Workers: add support for transferable objects from HTML5 spec. r=sphink, r=bent 2012-09-27 23:05:59 -04:00
Randell Jesup
65539ef89c Bug 773151: Convert nsCAutoString->nsAutoCString CLOSED TREE r=bsmedberg 2012-09-01 22:35:17 -04:00
Luke Wagner
ad90af9ca5 Bug 625199 - s/JSAutoEnterCompartment/JSAutoCompartment/ and make it infallible (r=bholley)
--HG--
extra : rebase_source : 12acf2288285f5caefd7fecea8207de3a47eab5b
2012-08-21 18:42:53 -07:00
Ehsan Akhgari
e368dc9c85 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
d0ad5a7d0c Bug 777292 part 2 - Change all nsnull to nullptr 2012-07-30 17:20:58 +03:00
David Zbarsky
d2ee12f6f9 Bug 763350 - Clean up some includes in content/ and dom/ r=smaug 2012-07-01 16:45:59 -07:00
Gervase Markham
82ff7027aa Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Bobby Holley
2d2091879c Bug 738956 - Wrap values in nsStructuredCloneContainer::InitFromVariant before passing them to JS_WriteStructuredClone. r=khuey 2012-03-27 11:43:11 -07:00
Landry Breuil
29474753d7 Bug 714332 - Fix uint64 types usage in dom/workers and dom/base; r=bent
Use uint64_t where appropriate for mData, fails to build on OpenBSD
otherwise with wrong casts/no matching template.

dom/base/nsStructuredCloneContainer.cpp:96: error: invalid conversion from 'PRUint64*' to 'uint64_t*'
dom/base/nsStructuredCloneContainer.cpp:131: error: invalid conversion from 'PRUint64*' to 'uint64_t*'
dom/workers/WorkerPrivate.cpp:822: error: no matching function for call to 'JSAutoStructuredCloneBuffer::steal(uint64**, size_t*)'
../../dist/include/jsapi.h:4641: note: candidates are: void
JSAutoStructuredCloneBuffer::steal(uint64_t**, size_t*, uint32_t*) <near
match>
dom/workers/WorkerPrivate.cpp:833: error: no matching function for call to 'JSAutoStructuredCloneBuffer::adopt(uint64*&, size_t&)'
../../dist/include/jsapi.h:4634: note: candidates are: void
JSAutoStructuredCloneBuffer::adopt(uint64_t*, size_t, uint32_t) <near
match>
dom/workers/WorkerPrivate.cpp:853: error: no matching function for call to 'JSAutoStructuredCloneBuffer::steal(uint64**, size_t*)'
../../dist/include/jsapi.h:4641: note: candidates are: void
JSAutoStructuredCloneBuffer::steal(uint64_t**, size_t*, uint32_t*) <near
match>
2012-01-02 19:08:14 +01:00
Ms2ger
e27ef6c21a Bug 713550 - Move Base64 code on nsXPConnect to XPCOM / xpcpublic.h; r=bholley+khuey 2011-12-28 09:13:38 +01:00
Jeff Walden
735580ff0e Bug 708735 - Use <stdint.h> types in JSAPI and throughout SpiderMonkey. Continue to provide the {u,}int{8,16,32,64} and JS{Uint,Int}{8,16,32,64} integer types through a single header, however, for a simpler backout strategy -- and also to ease the transition for embedders. r=timeless on switching the jsd API to use the <stdint.h> types, r=luke, r=dmandelin 2011-12-08 22:54:10 -05:00
Michael Wu
d2b70213ac 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
Justin Lebar
fc4cd2c7f1 Bug 656991 - Followup. Use JS_free instead of free. r=bz
--HG--
extra : rebase_source : 00e5cc27f067a191e7a834852faee8c788feb061
2011-05-16 16:36:12 -04:00
Justin Lebar
346784b907 Bug 656991 - Fix leak in nsStructuredCloneContainer::InitFromVariant. r=bz,igor 2011-05-15 20:29:19 -04:00
Justin Lebar
a8ba1048dc Bug 551225 - Make pushState use structured clone. r=zpao, sicking 2011-04-24 22:30:54 -04:00