Commit Graph

113 Commits

Author SHA1 Message Date
Boris Zbarsky
ce26c7ab39 Bug 882653 part 2. Make the "not an object" error reporting better in WebIDL bindings. r=smaug
This also adds infrastructure to generally indicate to the
js-to-native conversion exactly what is being converted.
2013-06-17 13:07:03 -04:00
Boris Zbarsky
a552fc6664 Bug 882653 part 1. Improve error reporting for bogus this objects in WebIDL bindings. r=smaug 2013-06-17 13:07:03 -04:00
James Kitchener
6d46bd7a62 Bug 796850 - Implement Code Generation for Bytestring in WebIDL bindings r=bz 2013-06-13 01:18:35 -04:00
Andrea Marchesini
5bd0488290 Bug 856410 - Implement futures - Part 0: ErrorResult::StealJSException. r=bz 2013-06-11 21:41:21 -04:00
Boris Zbarsky
9f09fecc19 Bug 877281 part 6. Replace ${jsvalPtr} with a MutableHandle ${jsvalHandle}. r=peterv
It's a little unfortunate that we need both ${jsvalHandle} and
${jsvalRef}, but the only other option is to consistently have a
MutableHandle in this code.  If the thing we have to work with is a
Rooted, that means doing JS::MutableHandle<JS::Value>(&myRooted) as
the thing to substitute for ${jsvalHandle}.  Just using "&myRooted"
doesn't work, because things like "&myRooted.set()" or
"&myRooted.address()" fail, even if parenthesized as
"(&myRooted).set()", because &myRooted is actually a Rooted*, not a
MutableHandle.

We could go the JS::MutableHandle<JS::Value>(&myRooted) route if
desired; it would primarily uglify dictionary and sequence to-js
conversions.  With the setup in this patch, ideally it looks pretty
idiomatic except for the use of .set() instead of operator= on Rooted.
2013-06-07 22:45:46 -04:00
Bobby Holley
41e994226a Bug 877261 - Stop using XPCCallContext for XPCConvert. r=Ms2ger 2013-06-04 21:11:19 -07:00
Ms2ger
d56528fce5 Bug 876602 - Move JS-implemented webidl construction code into C++; r=bz 2013-06-01 08:56:23 +02:00
Ms2ger
1602264ebc Bug 876604 - Outparamdel UnwrapDOMObjectToISupports; r=bz 2013-06-01 08:56:02 +02:00
Peter Van der Beken
86d520dcf2 Bug 874321 - Fix setting of expandos on Xrays for DOM bindings with named properties. r=bz.
--HG--
extra : rebase_source : 697545417d27696de05c0f22987e4cb187d226cd
2013-05-29 11:38:57 +02:00
Kyle Huey
fb465d209c Bug 876555: Avoid including xpcprivate.h in most generated dom binding code. r=bz 2013-05-30 11:15:31 +08:00
Boris Zbarsky
14e7edc59d Bug 876805. Fix unsafe reference gc hazards in dom/ code. r=smaug 2013-05-29 16:16:04 -04:00
Jon Coppeard
6d32ef3678 Bug 876639 - Address unsafe references from JS_ParseJSON() - Fix browser r=smaug 2013-05-29 09:29:39 +01:00
Ed Morley
1e88f4e513 Backed out changeset 7acdb79e4d71 (bug 876639) 2013-05-29 12:09:10 +01:00
Jon Coppeard
27ffea6482 Bug 876639 - Address unsafe references from JS_ParseJSON() - Fix browser r=smaug 2013-05-29 09:29:39 +01:00
Boris Zbarsky
2124ffdb96 Bug 865951. If the return value of a JS-implemented method or attribute is a JS-implemented interface and the returned object is not a DOM object, automatically wrap it up in an instance of that interface. r=mccr8
This does not invoke __init on the chrome object, since there are no
arguments to do it with anyway.  It also doesn't invoke init(), so
don't do this in cases in which the chrome-side object will need to
know its window.
2013-05-20 13:47:08 -04:00
Nathan Froyd
dbba9baf39 Bug 858131 - rewrite FloatingPoint.h to be C++-only instead of C-compatible C++; r+original-author=Waldo 2013-05-01 16:55:13 -04:00
Boris Zbarsky
797571f64b Bug 867863. Be a little more careful in GlobalObject initialization. r=peterv 2013-05-08 15:50:58 -04:00
Boris Zbarsky
49395eacab Bug 869311. More rooting in dom/bindings and content/base. r=smaug 2013-05-07 22:34:56 -04:00
Bobby Holley
e77e3c4631 Bug 868637 - Simplify DOM Bindings JSON parsing. r=bz
At this point we could really just hoist the JSAPI call, but it's just
cumbersome enough with all the casts that I don't really want to stick
it in the codegen.
2013-05-07 14:18:03 -07:00
Sankha Narayan Guria
6349c5c599 Bug 867414 - Rename SafeAutoJSContext to AutoSafeJSContext. r=bholley 2013-05-06 09:04:17 -04:00
Ms2ger
088cca5a9c Bug 868411 - Handlify js::GetObjectProto; r=bz 2013-05-05 09:03:14 +02:00
Boris Zbarsky
6baed10459 Bug 865969 part 6. Fix rooting hazards in BindingUtils.cpp. r=smaug 2013-05-03 19:29:08 -04:00
Boris Zbarsky
7cd15f8898 Bug 742206 part 1. Introduce a simple mozilla::dom::Date for use in WebIDL bindings. r=smaug 2013-05-02 14:38:19 -04:00
Boris Zbarsky
b7ef07e12d Bug 860841. Hook up the proto chain of a WebIDL interface object to the interface object of its nearest ancestor interface that has one, as if these were ES6 classes. r=peterv 2013-05-02 14:38:19 -04:00
Boris Zbarsky
8cc9072bea Bug 861022 part 2. Root the global object in WebIDL prototype and interface object setup. r=peterv,terrence 2013-05-01 23:44:12 -04:00
Boris Zbarsky
2ca9989cd9 Bug 861022 part 1. Root the non-globals in WebIDL prototype and interface object setup. r=peterv,terrence 2013-05-01 23:44:11 -04:00
Jim Blandy
e9b58eb4dc Bug 862531: Replace BaseProxyHandler::obj_toString with className. r=jorendorff 2013-04-30 14:44:50 -07:00
Boris Zbarsky
0c64b1ab00 Bug 865961. Root the scope argument of wrap-the-xpconnect-object helpers in WebIDL bindings. r=ms2ger 2013-04-29 17:33:42 -04:00
Boris Zbarsky
e31b7dba18 Bug 865964. Remove dead WrapCallbackInterface code. r=smaug 2013-04-26 13:41:21 -04:00
Peter Van der Beken
0ea5671cd2 Bug 862092 - "Assertion failure: target->isNative() == obj->isNative()" adopting a <select>. r=bz.
--HG--
extra : rebase_source : 3eef5382c32927ac321db47003a974768cbdaf6e
2013-04-16 19:02:57 +02:00
Bobby Holley
288399f5c0 Bug 860438 - Straightforward cases. r=gabor 2013-04-18 11:36:03 -04:00
Ryan VanderMeulen
db077d8be1 Backed out changeset 409285b3f69c (bug 862092) for mochitest-2 failures on a CLOSED TREE. 2013-04-17 11:48:34 -04:00
Peter Van der Beken
518ce59270 Bug 862092 - "Assertion failure: target->isNative() == obj->isNative()" adopting a <select>. r=bz.
--HG--
extra : rebase_source : 1905aa3aa956a599e9ce1de8866f7dc58feb73be
2013-04-16 19:02:57 +02:00
Jon Coppeard
385efb584a Bug 861281 - GC: Root the wrap object API r=terrence r=bholley
--HG--
extra : rebase_source : 1d3ed88299ad8e9ad6812fb41aa48f03cc7aabae
2013-04-15 18:32:55 +01:00
Joshua Cranmer
292c1594b0 Bug 856108 - Port static analyses to clang, part 2b: use MOZ_STACK_CLASS in dom. r=Ms2ger 2013-04-11 22:20:18 -05:00
Jacek Szpot
8123bfdfc5 Bug 854503 - Rename JS unwrapping functions. r=bholley 2013-04-11 11:50:18 -07:00
Boris Zbarsky
98cbeae46b Bug 860473 part 3. Root ErrorResult::ThrowJSException. r=evilpie,smaug 2013-04-11 14:31:06 -04:00
Boris Zbarsky
79d7391b5b Bug 860473 part 1. Root WebIDL dictionary ParseJSON. r=evilpie, smaug 2013-04-11 14:31:05 -04:00
Boris Zbarsky
58fc5c200e Bug 856428. Don't try to root an uninitialized value. r=peterv 2013-04-08 17:05:22 -04:00
Boris Zbarsky
3e0909e46e Bug 688691. Warn when LenientThis actually causes us to not throw. r=ms2ger 2013-04-08 17:04:21 -04:00
Ryan VanderMeulen
9420af6638 Backed out changeset a85d21e394c0 (bug 854503) for bustage. 2013-04-06 14:37:33 -04:00
Jacek Szpot
ccadc1da47 Bug 854503 - Rename JS unwrapping functions. r=bholley 2013-04-04 12:14:32 +02:00
Boris Zbarsky
ee5b601b3a Bug 855700. Make returning an nsIVariant from a WebIDL interface work. r=smaug 2013-04-03 22:22:16 -04:00
Jose Cortes
c3d2c6b38c Bug 842186 - Replace use of jsval with JS::Value in h and cpp files in the dom/bindings/ dom/plugins/ dom/src/ dom/activities/ directories. r=jwalden
--HG--
extra : rebase_source : 2757a7ab265153fa4c769a69a4947b9258e4413e
2013-04-02 16:05:37 -07:00
Boris Zbarsky
b78a02dc00 Bug 855582 part 2. Make the bindings' various spec arrays const, and make the jitinfo structs static. r=khuey 2013-04-02 20:20:38 -04:00
Bobby Holley
9f6e03ced8 Bug 854480 - Remove old-style unwrapping from dom/bindings bindings. r=bz 2013-04-01 15:17:50 -07:00
Tom Schuster
0112f8352e Bug 828462 - Root Proxy/Wrapper in the browser. r=terrence,bz 2013-03-21 23:23:48 +01:00
Boris Zbarsky
7984f39d39 Bug 843627 part 3. Enable WebIDL bindings for <embed> and <applet>. r=peterv 2013-03-17 10:42:05 -04:00
Boris Zbarsky
811a7ec078 Bug 827158 part 11. Move HTMLObjectElement to Web IDL bindings. r=peterv 2013-01-06 18:55:14 -05:00
Peter Van der Beken
dc6b00b18c Fix for bug 842799 (|Document.prototype instanceof Node| inside <script> returns false). r=bz. 2013-02-22 10:25:24 +01:00