Commit Graph

470 Commits

Author SHA1 Message Date
Kris Maglione
2f66e87f0b Bug 1445551: Part 3 - Remove AllowCPOWsInAddon machinery. r=mccr8
This is all dead code now that the add-on manager support for shimmed add-ons
has been removed.

MozReview-Commit-ID: J6aRQDqEahs
2018-03-13 19:20:17 -07:00
Andrea Marchesini
cdb15164d7 Bug 1443079 - nsScriptError.isFromPrivateWindow must match the correct value also in e10s mode, r=smaug 2018-03-13 06:40:38 +01:00
Jason Orendorff
d640df5146 Bug 1439063 - Part 1: Move several public headers from js/src to js/public. r=jandem.
js/src/jsalloc.h -> js/public/AllocPolicy.h
jsalloc.cpp -> js/src/util/AllocPolicy.cpp
jsbytecode.h -> merge into js/public/TypeDecls.h
jsprf.h -> js/public/Printf.h
jsprf.cpp -> js/src/util/Printf.cpp
jsprototypes.h -> public/ProtoKey.h
jswrapper.h -> js/Wrapper.h
2018-02-21 10:30:19 -06:00
Chris Peterson
677bf4030c Bug 1428535 - Add missing override specifiers to overridden virtual functions. r=froydnj
MozReview-Commit-ID: DCPTnyBooIe
2017-11-05 19:37:28 -08:00
Sylvestre Ledru
37064ac043 Bug 1394734 - Replace CONFIG['GNU_C*'] by CONFIG['CC_TYPE'] r=glandium
MozReview-Commit-ID: 7duJk2gSd4m
2017-12-07 22:09:15 +01:00
Jan de Mooij
37b8f5c8c3 Bug 1413867 - Remove StopIteration object. r=evilpie 2017-11-05 19:01:04 +01:00
Steve Fink
cb2dda1273 Bug 1406570 - Rooting improvements, r=jonco,bz 2017-10-09 10:59:02 -07:00
Jan de Mooij
325f2ebe3b Bug 1403136 - Clean up JSSetterOp code now that slotful setters are gone. r=evilpie 2017-09-26 22:26:40 +02:00
Jon Coppeard
92628b5345 Bug 1396613 - Update the object moved hook to allow it to be called when tenuring nursery objects r=sfink r=mccr8 2017-09-19 12:31:30 +01:00
Jason Orendorff
f5235a8008 Bug 1363200 - JSAPI for realms: Split xpc::RealmPrivate from xpc::CompartmentPrivate. r=mrbkap 2017-06-08 11:07:10 -05:00
Jan de Mooij
9e74eb50a5 Bug 1393790 part 2 - Remove JS_PropertyStub and JS_StrictPropertyStub. r=jorendorff 2017-08-28 10:40:19 +02:00
Nicholas Nethercote
09493fcbcf Bug 1384835 (part 3, attempt 2) - Remove the Preferences::Get*CString() variants that return nsAdoptingCString. r=froydnj. 2017-07-31 14:28:48 +10:00
Ehsan Akhgari
7ee3166230 Bug 1382339 - Improve SpiderMonkey hashing functions by using MFBT's HashGeneric more; r=jandem 2017-07-20 12:59:09 -04:00
Jan de Mooij
e959a1182a Bug 1379461 - Refactor code to return RegExpShared* directly instead of using bool + outparam. r=evilpie,sfink 2017-07-11 11:31:12 +02:00
Carsten "Tomcat" Book
0603cbc370 Backed out changeset 3a0a2ffe803b (bug 1379461) for hazard failure 2017-07-11 12:59:09 +02:00
Jan de Mooij
a2a13185d4 Bug 1379461 - Refactor code to return RegExpShared* directly instead of using bool + outparam. r=evilpie 2017-07-11 11:31:12 +02:00
Jan de Mooij
4afba77787 Bug 1375505 part 1 - Change iterator code to return JSObject* instead of returning bool + outparam. r=evilpie 2017-06-28 21:00:43 -07:00
Nicholas Nethercote
a58025002f Bug 1375392 - Tweak the PROFILER_LABEL* macros. r=mstange.
This patch makes the following changes to the macros.

- Removes PROFILER_LABEL_FUNC. It's only suitable for use in functions outside
  classes, due to PROFILER_FUNCTION_NAME not getting class names, and it was
  mostly misused.

- Removes PROFILER_FUNCTION_NAME. It's no longer used, and __func__ is
  universally available now anyway.

- Combines the first two string literal arguments of PROFILER_LABEL and
  PROFILER_LABEL_DYNAMIC into a single argument. There was no good reason for
  them to be separate, and it forced a '::' in the label, which isn't always
  appropriate. Also, the meaning of the "name_space" argument was interpreted
  in an interesting variety of ways.

- Adds an "AUTO_" prefix to PROFILER_LABEL and PROFILER_LABEL_DYNAMIC, to make
  it clearer they construct RAII objects rather than just being function calls.
  (I myself have screwed up the scoping because of this in the past.)

- Fills in the 'js::ProfileEntry::Category::' qualifier within the macro, so
  the caller doesn't need to. This makes a *lot* more of the uses fit onto a
  single line.

The patch also makes the following changes to the macro uses (beyond those
required by the changes described above).

- Fixes a bunch of labels that had gotten out of sync with the name of the
  class and/or function that encloses them.

- Removes a useless PROFILER_LABEL use within a trivial scope in
  EventStateManager::DispatchMouseOrPointerEvent(). It clearly wasn't serving
  any useful purpose. It also serves as extra evidence that the AUTO_ prefix is
  a good idea.

- Tweaks DecodePool::SyncRunIf{Preferred,Possible} so that the labelling is
  done within them, instead of at their callsites, because that's a more
  standard way of doing things.
2017-06-22 17:08:53 +10:00
Jan de Mooij
6ad0a86b42 Bug 1237504 - Refactor proxy slot layout to allow proxies to have more than 2 slots. r=bz,jonco
The patch makes the following proxy changes:

* The number of slots in ProxyValueArray is now dynamic and depends on the number of reserved slots we get from the Class.
* "Extra slots" was renamed to "Reserved slots" to make this clearer.
* All proxy Classes now have 2 reserved slots, but it should be easy to change that for proxy Classes that need more than 2 slots.
* Proxies now store a pointer to these slots and this means GetReservedSlot and SetReservedSlot can be used on proxies as well. We no longer need GetReservedOrProxyPrivateSlot and SetReservedOrProxyPrivateSlot.

And some changes to make DOM Proxies work with this:

* We now store the C++ object in the first reserved slot (DOM_OBJECT_SLOT) instead of in the proxy's private slot. This is pretty nice because it matches what we do for non-proxy DOM objects.
* We now store the expando in the proxy's private slot so I removed GetDOMProxyExpandoSlot and changed the IC code to get the expando from the private slot instead.
2017-04-28 14:12:28 +02:00
Bill McCloskey
f32234a94e Bug 1359245 - Eliminate nsXPConnect::GetContextInstance() (r=mccr8)
This method assumes there is one global XPCJSContext. This patch eliminates
uses of it.

MozReview-Commit-ID: L2AkBGh5TnC
2017-04-27 15:34:46 -07:00
Jon Coppeard
d60b70fa01 Bug 1352430 - Add barrier to CPOWs table to remove dying objects r=billm 2017-04-26 11:18:53 +01:00
Jon Coppeard
1690b0506c Bug 1345177 - Remove use of RegExpGuard r=sfink 2017-03-27 10:38:29 +01:00
Jon Coppeard
f2dc766532 Backed out changesets e66f564d9749 and 0380d914ad39 (bug 1345177) for rooting hazards 2017-03-27 11:09:54 +01:00
Jon Coppeard
08352c6c76 Bug 1345177 - Remove use of RegExpGuard r=sfink 2017-03-27 10:38:29 +01:00
Jon Coppeard
b0a63f7241 Bug 1341044 - Rename the GC's 'zone group' concept to 'sweep group' r=sfink 2017-03-22 17:30:50 +00:00
Tom Tromey
e90d95a3f9 Bug 1060419 - make AppendPrintf and nsPrintfCString use Printf.h, r=froydnj
MozReview-Commit-ID: 2E8FoiNxU8L
2016-12-14 09:32:21 -07:00
Tom Schuster
932e8ca649 Bug 1339036 - Rename JSTYPE_VOID to JSTYPE_UNDEFINED. r=arai 2017-02-13 17:26:16 +01:00
Boris Zbarsky
b0f35c60e3 Bug 1335368 part 8. Stop using IsCallerChrome in UnwrapArgImpl. r=bholley 2017-02-01 15:43:37 -05:00
Tooru Fujisawa
4b595b32f4 Bug 1332245 - Move nsScriptError from js/xpconnect to dom/bindings. r=bz 2017-01-28 00:42:47 +09:00
Andrew McCreight
1bde316c56 Bug 1331809 - Remove unused variable in WrapperOwner::hasInstance(). r=kanru
MozReview-Commit-ID: 3de6HDTVpU0
2017-01-17 16:34:16 -08:00
Andrew McCreight
40df076a4a Bug 1330018 - Ensure we always unwrap CpowEntries. r=bholley,billm
We can drop async messages that contain CPOWs, which can cause us to
leak them either until we successfully send a CPOW or forever,
depending on the direction of the message. This is causing
intermittent leaks until shutdown with e10s-multi.

MozReview-Commit-ID: 3iIaIBZKZR2
2017-01-13 13:50:35 -08:00
Andrew McCreight
4f6b7d8ac4 Bug 1331115 - Fix two typos in CPOW code. r=billm
MozReview-Commit-ID: FAh7O1U9hGP
2017-01-13 09:49:17 -08:00
Steve Fink
ba86250240 Bug 1308236 - Don't trigger read barriers when comparing wrapped pointers types r=sfink r=mccr8 2016-10-28 15:11:56 -07:00
Jon Coppeard
1bf98927a2 Bug 1318384 - Don't trigger pre barrier in WrapperAnswer::RecvDropObject r=billm 2016-11-18 13:18:09 +00:00
Kan-Ru Chen
1b9dd22e2d 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
Bill McCloskey
f4301a8121 Bug 792652 - Simplify IPDL type hierarchy (r=dvander)
Currently all our protocols inherit from IProtocolManager<IProtocol>. I have
no idea why. This patch switches everything over to IProtocol, without any
templates. I had to move ReadActor to the .cpp file to avoid redefinition
errors.
2016-11-08 15:22:34 -08:00
Wes Kocher
9ae70893b6 Backed out 18 changesets (bug 792652) for build bustage on linux64 a=backout CLOSED TREE
Backed out changeset 90eaf6aec002 (bug 792652)
Backed out changeset ddd915ab4a48 (bug 792652)
Backed out changeset 95eff6c45cae (bug 792652)
Backed out changeset 75855b5a9ab9 (bug 792652)
Backed out changeset b658ebaad5d7 (bug 792652)
Backed out changeset 2ba36b8ac60c (bug 792652)
Backed out changeset 94fcd3bf3f34 (bug 792652)
Backed out changeset cf9c4164eb43 (bug 792652)
Backed out changeset 59e6d0a4f35b (bug 792652)
Backed out changeset bdf86b8b9c43 (bug 792652)
Backed out changeset 8edf4b247250 (bug 792652)
Backed out changeset 63a3c8e4016e (bug 792652)
Backed out changeset e3e496eab991 (bug 792652)
Backed out changeset 5a1e3136323a (bug 792652)
Backed out changeset dbbe3a8c00e7 (bug 792652)
Backed out changeset 1829d5358808 (bug 792652)
Backed out changeset 004cd692ba6d (bug 792652)
Backed out changeset 92e7fee81fa2 (bug 792652)
2016-11-08 12:05:28 -08:00
Bill McCloskey
bddad17826 Bug 792652 - Simplify IPDL type hierarchy (r=dvander)
Currently all our protocols inherit from IProtocolManager<IProtocol>. I have
no idea why. This patch switches everything over to IProtocol, without any
templates. I had to move ReadActor to the .cpp file to avoid redefinition
errors.
2016-11-08 11:32:24 -08:00
David Major
c4864e69d5 Bug 1311825: Pass by reference in fromObjectVariant and related methods. r=billm
MozReview-Commit-ID: GIhK1zRMsYb
2016-10-20 15:37:26 -05:00
Bill McCloskey
1deceb4b29 Bug 1311212 - Add dead CPOW debugging facility (r=mrbkap) 2016-10-19 16:26:23 -07:00
Bill McCloskey
efff0482ee Bug 1306708 - Rename prio to nested in IPDL (r=dvander) 2016-10-04 20:34:54 -07:00
Bill McCloskey
71303baeea Revert "Bug 1306708 - Rename prio to nested in IPDL (r=dvander)" on a CLOSED TREE
This reverts commit b1460c626078afbb9290e7d9ecaf3af605d5e893.
2016-10-04 15:55:19 -07:00
Bill McCloskey
308f9f039b Bug 1306708 - Rename prio to nested in IPDL (r=dvander) 2016-10-04 15:28:14 -07:00
Terrence Cole
ed32b698b3 Bug 1297558 - Use a read barrier on Heap to ExposeToActiveJS r=sfink r=mccr8 2016-02-07 09:08:55 -08:00
Tooru Fujisawa
a33ab4d32a Bug 1290337 - Part 13: Replace Value parameter to const Value& in finalizeInBackground. r=sfink 2016-09-11 18:15:23 +09:00
Tooru Fujisawa
a5294e0308 Bug 1289050 - Part 1: Use ASCII variant of JS_ReportError in simple case. r=jwalden 2016-08-14 20:39:28 +09:00
Kan-Ru Chen
a9b19d0584 Bug 1297276 - Rename mfbt/unused.h to mfbt/Unused.h for consistency. r=froydnj
The patch is generated from following command:

  rgrep -l unused.h|xargs sed -i -e s,mozilla/unused.h,mozilla/Unused.h,

MozReview-Commit-ID: AtLcWApZfES
2016-08-24 14:47:04 +08:00
Jan de Mooij
519f0d4bf1 Bug 1292892 part 7 - Remove unnecessary JSContext arguments from IPC classes. r=bz 2016-08-11 14:39:23 +02:00
Jan de Mooij
bd0f1c9018 Bug 1292892 part 1 - Stop using JSRuntime outside SpiderMonkey. r=bz,terrence,fitzgen,kanru 2016-08-11 14:39:22 +02:00
Wei-Cheng Pan
0a2691dccf Bug 1249698 - Use parent stack instead of vanished child stack. r=billm
MozReview-Commit-ID: LaX5K1uPZo9
2016-07-26 18:30:42 +08:00