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

1101 Коммитов

Автор SHA1 Сообщение Дата
Nathan Froyd f8bedda41c Bug 1384713 - remove unused *MsgStartChild constants; r=billm
We only ever use these for passing them into Endpoint construction.
Let's remove them.  Removing them also shows that the corresponding
field in Endpoint is essentially read-only, so we can completely avoid
passing in protocol IDs to Endpoint.
2017-07-27 13:32:15 -04:00
Kyle Machulis 2c4c8a9654 Bug 1382788 - Remove GetBlocklistState IPC message; r=bsmedberg
We removed all uses of GetBlocklistState in bug 1350640. This patch
removes the message and supporting functions from the PContent IPDL.

MozReview-Commit-ID: 4JtGAWZ0nPu

--HG--
extra : rebase_source : 4eb3c21e3768e9d8284d4eec129e099be5ef17d0
2017-07-20 12:57:01 -07:00
Andrew McCreight 5729273ca7 Bug 1383881 - Fix sync message whitelist for PTestPriority. r=billm
This protocol was changed in bug 1351148, but the whitelist was not
updated.

MozReview-Commit-ID: Btl5633et9T

--HG--
extra : rebase_source : 0ce70a649c83213a8a47e1b08c06d7d5743a9842
2017-07-24 13:19:03 -07:00
Henry Chang 53ee190096 Bug 1380974 - Use custom size for small frequent messages. r=billm
Since the default size is 64, we only care about message size which is > 64 bytes.

MozReview-Commit-ID: 2vUpcaUjlNP

--HG--
extra : rebase_source : 946ae82f8fc2febd05d8fc4323145643ec97b306
2017-07-20 11:37:09 +08:00
Ryan VanderMeulen f4e3a91992 Merge m-c to inbound. a=merge 2017-07-21 09:40:28 -04:00
Samael Wang e90e4d4b15 Bug 1350643 - Part 7: Remove sync GetDPI/DefaultScale/WidgetRounding. Use primary screen's value until RecvShow. r=kanru
MozReview-Commit-ID: GlDMNecWp3j

--HG--
extra : rebase_source : 1f8573df8845c100172f41febc5a84bbcd069769
2017-05-19 18:20:18 +08:00
Kevin Chen 91dc0db35c Bug 1364563 - Add a path for content process only device reset. r=dvander 2017-07-18 23:09:00 -04:00
dan1bh de45c53ef7 Bug 1352559 - Remove support for plugin-provided streams; NPN_NewStream, PPluginStream and other supporting machinery, r=bsmedberg
Removed API List:
* NPN_NewStream
* NPN_Write
* NPN_DestroyStream
* nsNPAPIStreamWrapper
* nsPluginStreamToFile
* PPluginStream.ipdl

MozReview-Commit-ID: 61dKGct3qGW

--HG--
extra : source : 999aa7b6683d7f0cf481f8dd0e8a9ba3dade4a05
extra : intermediate-source : cb1548354e0cf582dca6b0ab0d27712d01a4c819
2017-07-11 14:27:25 -04:00
Nicholas Nethercote 7f215371c0 Backed out changeset cb1548354e0c (bug 1352559, part 3) for causing *many* crashes in Nightly. r=backout 2017-07-17 09:41:29 +10:00
Stone Shih 9573b6e439 Bug 1351148 Part2: Add a priority queue for input events. r=smaug.
MozReview-Commit-ID: 5ud1Ex9UNVo
2017-03-21 15:44:12 +08:00
Wes Kocher 33c2277e1f Merge m-c to inbound, a=merge
MozReview-Commit-ID: 7rfXDtMWy2C
2017-07-12 18:26:46 -07:00
dan1bh b62787e960 Bug 1352559 - Remove support for plugin-provided streams; NPN_NewStream, PPluginStream and other supporting machinery, r=bsmedberg
Removed API List:
* NPN_NewStream
* NPN_Write
* NPN_DestroyStream
* nsNPAPIStreamWrapper
* nsPluginStreamToFile
* PPluginStream.ipdl

MozReview-Commit-ID: 61dKGct3qGW

--HG--
extra : rebase_source : 1567d89d0735ca23c964a0c6691f9a117305641f
extra : source : 999aa7b6683d7f0cf481f8dd0e8a9ba3dade4a05
2017-07-11 14:27:25 -04:00
Sebastian Hengst 849284daf4 Backed out changeset 999aa7b6683d (bug 1352559) 2017-07-12 19:10:50 +02:00
dan1bh 88039d6fa3 Bug 1352559 - Remove support for plugin-provided streams; NPN_NewStream, PPluginStream and other supporting machinery, r=bsmedberg
Removed API List:
* NPN_NewStream
* NPN_Write
* NPN_DestroyStream
* nsNPAPIStreamWrapper
* nsPluginStreamToFile
* PPluginStream.ipdl

MozReview-Commit-ID: 61dKGct3qGW

--HG--
extra : rebase_source : 0e9be256f97be62efe376a3f70d579859592901f
2017-07-11 14:27:25 -04:00
Henry Chang 6d648badcb Bug 1348591 - Support custom default segment buffer list size. r=billm
MozReview-Commit-ID: 2Nkj6RPx62f

--HG--
extra : rebase_source : 4e763563e3f9e9927314e804ba4e0fbd291fc9e8
2017-06-21 17:55:13 +08:00
Sylvestre Ledru 4e9cf83ee8 Bug 1378712 - Remove all trailing whitespaces r=Ehsan
MozReview-Commit-ID: Kdz2xtTF9EG

--HG--
extra : rebase_source : 7235b3802f25bab29a8c6ba40a181a722f3df0ce
2017-07-06 14:00:35 +02:00
sotaro 1deee6448b Bug 1377024 - Add support of device reset test from about:support r=kats,dvander 2017-06-29 11:46:36 -07:00
Carsten "Tomcat" Book 5f00ae3a8b merge mozilla-inbound to mozilla-central a=merge 2017-06-29 15:47:04 +02:00
Carsten "Tomcat" Book 257a632d4b Merge mozilla-central to autoland on a CLOSED TREE 2017-06-28 16:33:00 +02:00
Carsten "Tomcat" Book ba466337dd Backed out changeset 4364536ae549 (bug 1343728) 2017-06-28 15:52:04 +02:00
Carsten "Tomcat" Book 6365f16e57 Backed out changeset a1e773337202 (bug 1350633) 2017-06-28 15:52:01 +02:00
Carsten "Tomcat" Book 45f2e51f0a Merge mozilla-central to autoland 2017-06-28 13:47:29 +02:00
Michael Layzell 3c82b8c224 Bug 1350633 - Remove the Msg_GetWidgetNativeData sync IPC, r=billm, r=jimm
MozReview-Commit-ID: Bql29wgVDZ5
2017-06-27 16:24:48 -04:00
Michael Layzell 31e36ee704 Bug 1343728 - Part 4: Remove the window creation sync IPC calls, r=billm, r=smaug
MozReview-Commit-ID: IWayDUWuRrf
2017-06-27 16:24:48 -04:00
Kartikaya Gupta 83a30f9ca7 Bug 1375497 - Add the new IPDL messages to sync-messages.ini. r=dvander
MozReview-Commit-ID: 72xnGBwbFb8

--HG--
extra : rebase_source : a4dbba8e5f4e3c3c44ead892d71fc4019d4fe734
2017-06-27 20:29:06 -04:00
Ryan Hunt db5f497c0f Bug 1351783 part 16 - Perform async scrolling for keyboard events when possible. r=kats,botond,dvander
This commit ties it all together by dispatching keyboard actions to scroll targets
in response to keyboard inputs when we have current and valid focus state.

MozReview-Commit-ID: G7rZiS3FH5e

--HG--
extra : rebase_source : 10129d417fe8ef576cac5bda3157dd8f65b5843a
extra : histedit_source : be651a33f787f68bc764988ddc073d346e854491
2017-06-05 19:46:06 -05:00
Ryan Hunt c1312e5abc Bug 1351783 part 12 - Create and sync focus sequence numbers. r=kats,botond,dvander
Focus can change at any moment in a document. This causes non-determinism and
correctness problems for doing keyboard apz scrolling. To get around this, we
will maintain deterministic behavior for focus changes initiated by input events
and see if we can get away with more non-determinism for things like `setTimeout`

In order to do this, we disable async keyboard scrolling when an input event is
processed that could have a event listener. We then attach a sequence number to
that input event and dispatch it to content. In content, we record the highest
sequence number that we have processed from an event, and send that on each focus
update. Using this, we can determine in APZ if we have a current focus target or
if we are still waiting for an input event to be processed and focus to be
reconfirmed.

MozReview-Commit-ID: CWcu8YEFQz4

--HG--
extra : rebase_source : 8c54a619bd4f5ee892f0cc8768a10f3e1e4e0b59
extra : histedit_source : 601ca293a028787883841adc6b40e62c0cc829e5
2017-06-05 19:45:31 -05:00
Bill McCloskey f115503a0b Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-26 14:19:58 -07:00
Michael Layzell 17143c4e93 Bug 1350633 - Remove the Msg_GetWidgetNativeData sync IPC, r=billm, r=jimm
MozReview-Commit-ID: Bql29wgVDZ5
2017-06-28 12:25:32 -04:00
Michael Layzell 83cff4de78 Bug 1343728 - Part 4: Remove the window creation sync IPC calls, r=billm, r=smaug
MozReview-Commit-ID: IWayDUWuRrf
2017-06-28 12:25:30 -04:00
Nicholas Nethercote 58786e1ea7 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.

--HG--
extra : rebase_source : 318d1bc6fc1425a94aacbf489dd46e4f83211de4
2017-06-22 17:08:53 +10:00
Wes Kocher b9d43d4afd Backed out 4 changesets (bug 1343728) for failures in test_group_mouseevents.html a=backout
Backed out changeset 2029cb6bce86 (bug 1343728)
Backed out changeset 0169e09f6030 (bug 1343728)
Backed out changeset 831e95b29f66 (bug 1343728)
Backed out changeset d5630ef01b17 (bug 1343728)

MozReview-Commit-ID: 2RRBTmp5FGj
2017-06-21 17:13:49 -07:00
Wes Kocher 0439cd545d Backed out changeset 36d662fbab77 (bug 1350633) for failures in test_group_mouseevents.html a=backout
MozReview-Commit-ID: Gh9eflBppgq
2017-06-21 17:12:20 -07:00
David Anderson aa1457713c Allow IPDL message sends to be deferred and re-sent as needed. (bug 1369529 part 2, r=billm)
--HG--
extra : rebase_source : 46d2af94da6b38e8c2fe70fd4566650d8cec8fe4
2017-06-21 13:40:18 -07:00
David Anderson 1951b4cd34 Add IPDL test files for message ordering problems in OMTP. (bug 1369529 part 1, r=billm)
--HG--
extra : rebase_source : 2609a7371d78a34e750aa65687ca0011eec9f14c
2017-06-21 13:40:18 -07:00
Michael Layzell f02a75cf86 Bug 1350633 - Remove the Msg_GetWidgetNativeData sync IPC, r=billm, r=jimm
MozReview-Commit-ID: Bql29wgVDZ5
2017-06-21 14:23:16 -04:00
Michael Layzell 746a415780 Bug 1343728 - Part 4: Remove the window creation sync IPC calls, r=billm, r=smaug
MozReview-Commit-ID: IWayDUWuRrf
2017-06-21 14:23:15 -04:00
Carsten "Tomcat" Book 8a1350b5a6 Backed out changeset 4f6302a98ae4 (bug 1372405)
--HG--
extra : rebase_source : 41632f3158e88e692809731394a683d065a73dfb
2017-06-21 13:59:26 +02:00
Bill McCloskey 6b3e84ed5f Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-20 21:44:11 -07:00
Carsten "Tomcat" Book ea1b86680c Backed out changeset 9846de3bd954 (bug 1372405)
--HG--
extra : rebase_source : 5d4a48e8ec394c329994689d938d2a6e9b2752b0
2017-06-20 08:27:02 +02:00
Bill McCloskey 4592152411 Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-19 22:25:47 -07:00
Sebastian Hengst 7e1b1cf069 Backed out changeset 05a5f9d8249f (bug 1343728) 2017-06-16 22:20:37 +02:00
Sebastian Hengst e8cca2e7cf Backed out changeset 956306ea34f3 (bug 1350633) 2017-06-16 22:20:32 +02:00
Michael Layzell 6648f5c781 Bug 1350633 - Remove the Msg_GetWidgetNativeData sync IPC, r=billm, r=jimm
MozReview-Commit-ID: Bql29wgVDZ5
2017-06-16 14:59:35 -04:00
Michael Layzell c0d7319a4f Bug 1343728 - Part 3: Remove the window creation sync IPC calls, r=billm, r=smaug
MozReview-Commit-ID: IWayDUWuRrf
2017-06-16 14:59:34 -04:00
Bill McCloskey 5066de8593 Bug 1366072 - MozPromise tests (r=jwwang)
MozReview-Commit-ID: 69OQb1f3UTd
2017-06-13 14:51:07 -07:00
Bill McCloskey c85ab6308c Bug 1366072 - Change promises to take nsISerialEventTarget instead of AbstractThread (r=jwwang)
MozReview-Commit-ID: 4azUhSB6whu
2017-06-13 14:51:01 -07:00
Nicholas Nethercote 0be77baa96 Bug 1370329 (part 1) - Clean up the profiler's RAII classes. r=mstange.
This patch does the following renamings, which increase consistency.

- GeckoProfilerInitRAII -> AutoProfilerInit
- GeckoProfilerThread{Sleep,Wake}RAII -> AutoProfilerThread{Sleep,Wake}
- GeckoProfilerTracingRAII -> AutoProfilerTracing
- AutoProfilerRegister -> AutoProfilerRegisterThread
- ProfilerStackFrameRAII -> AutoProfilerLabel
- nsJSUtils::mProfilerRAII -> nsJSUtils::mAutoProfilerLabel

Plus a few other minor ones (e.g. local variables).

The patch also add MOZ_GUARD_OBJECT macros to all the profiler RAII classes
that lack them, and does some minor whitespace reformatting.

--HG--
extra : rebase_source : 47e298fdd6f6b4af70e3357ec0b7b0580c0d0f50
2017-06-07 12:33:19 +10:00
Jeff Muizelaar 4cf1367466 Bug 1370681. WebRender: Remove unnecessary sync messages. r=kats,dvander
These don't need to be sync and we're spending a noticeable amount of
time in DeleteImage.
2017-06-08 18:05:57 -04:00
Kyle Machulis 13959a88ce Bug 1337058 - Remove FindPlugins IPC message; r=bsmedberg 2017-06-06 18:29:32 -07:00
Ryan VanderMeulen 4b1082a507 Backed out changeset 0ff4ad45f99c (bug 1337058) for causing bug 1370237.
--HG--
extra : rebase_source : 3ed4d5a41898ead386f8a75b0d2f7be1899cf767
2017-06-05 20:14:55 -04:00
Kartikaya Gupta 8bd2880fc4 Bug 1369840 - Add new test IPDL message to sync-messages.ini. r=dvander
MozReview-Commit-ID: 51i94Gj0Mgq
2017-06-04 22:29:35 -04:00
Kyle Machulis 2902c3f037 Bug 1337058 - Remove FindPlugins IPC message; r=bsmedberg
MozReview-Commit-ID: GQVHEeQp1dx

--HG--
extra : rebase_source : d421a613434be2bcca1120cfffb92ed9f20ba9d4
2017-06-01 15:33:23 -07:00
Kan-Ru Chen 2813dde8a6 Bug 1368031 - Pass resolver function to Recv methods instead of a MozPromise r=billm
Added new typedef for the Resolve function. The Resolve function is a
std::function accepting corresponding parameters. When it's invoked it
will send the reply immediately. Users can still wrap it in a
MozPromise if they want promise chaining.

The original typedef of the Promise type is repurposed as the Send*
functions' return type.

MozReview-Commit-ID: JZ4IsgJ87M1
2017-06-01 15:57:21 +08:00
Kan-Ru Chen fc620b75af Bug 1368031 - Do not send reply if actor is dead r=billm
Actors with async returns methods will automatically implement
WeakPtr so we can check in the resolving function whether it's safe to
send messages.

MozReview-Commit-ID: IyDwIYSShlS
2017-06-01 15:57:20 +08:00
Kearwood Gilbert eb3becc0b0 Bug 1362213 - Implement chrome-only API to manage VR sessions r=daoshengmu,kanru,smaug
- Added new chrome-only webidl methods to be used by browser UI and WebExtensions
- Implemented bitmasked group visibility for VR sessions to enable switching
  between chrome and regular content presentations.
- Implemented throttling mechanism to avoid runaway, unthrottled render loops
  for VR sessions that are hidden by group visibility bitmasks or due to
  lower level platform VR events, such as during the Oculus
  "Health and Safety Warning".
- Simplified the PVRManager IPC protocol while extending it to support
  VR session groups and later WebVR content performance profiling API's.
- Removed the last WebVR related sync IPC call.


MozReview-Commit-ID: BMEIPyYeEbq

--HG--
extra : rebase_source : 47d3682cad3d913504175b7d4c3e9d992236f097
2017-05-08 16:01:36 -07:00
Kartikaya Gupta d5c99e4ebb Bug 1367837 - Implement some APZ test util APIs for webrender. r=botond,dvander
This implements some methods exposed on DOMWindowUtils and used by
reftests, for the WebRender codepath. The implementation is very similar
to the implementation in LayerTransactionParent.

MozReview-Commit-ID: HP8OxzIzS7P
2017-05-28 07:48:36 -04:00
Kan-Ru Chen e900659346 Bug 1367176 - Expose promise typedef to public so it can be used outside of actor. r=billm
MozReview-Commit-ID: JRlPR2rs3ij

--HG--
extra : rebase_source : 7e23178f678d0fffd99d21bbf4fdbb954792fa0e
2017-05-24 13:06:35 -04:00
David Parks f2774deb20 Bug 1363290 - Part 3: Proxy win32's SetCursorPos for plugins in chrome process. r=jimm, r=jed
SetCursorPos is used by Flash's relative cursor motion behavior.  It is blocked by the plugin sandbox.  This patch allows it to run by proxying it on the main process.

--HG--
extra : histedit_source : 85515d398c0c107c2258185c0591a943b26e724a
2017-05-16 14:47:09 -07:00
Andrea Marchesini 281c7e8cdd Bug 1359718 - Get rid of PBlob - part 2 - PBlob, r=smaug, r=kanru 2017-05-23 18:05:19 +02:00
Andrea Marchesini bc8f9a2827 Bug 1359718 - Get rid of PBlob - part 1 - Remove PBlobStream, r=smaug, r=kanru 2017-05-23 18:04:27 +02:00
Ehsan Akhgari 1040ee9f65 Bug 1347035 - Store the maximum touch points for each tab child on the object instead of querying it synchronously from the parent actor when neeeded; r=smaug ipc-r=kanru 2017-05-23 17:00:09 -04:00
Sebastian Hengst b34db7c9fe Backed out changeset 48ed92a3d18a (bug 1359718) 2017-05-23 19:12:31 +02:00
Sebastian Hengst 4ac10ab053 Backed out changeset c3251f5022dd (bug 1359718) 2017-05-23 19:12:25 +02:00
Andrea Marchesini f512688b0b Bug 1359718 - Get rid of PBlob - part 2 - PBlob, r=smaug, r=kanru 2017-05-23 18:05:19 +02:00
Andrea Marchesini 7c4d305b8f Bug 1359718 - Get rid of PBlob - part 1 - Remove PBlobStream, r=smaug, r=kanru 2017-05-23 18:04:27 +02:00
Sebastian Hengst 77897ad1e3 Backed out changeset 3b7d055b4207 (bug 1359718) 2017-05-23 18:34:45 +02:00
Sebastian Hengst 89e8ea64b1 Backed out changeset 537abc431472 (bug 1359718) 2017-05-23 18:34:40 +02:00
Andrea Marchesini 7db3365daf Bug 1359718 - Get rid of PBlob - part 2 - PBlob, r=smaug, r=kanru 2017-05-23 18:05:19 +02:00
Andrea Marchesini ed95a3adde Bug 1359718 - Get rid of PBlob - part 1 - Remove PBlobStream, r=smaug, r=kanru 2017-05-23 18:04:27 +02:00
Wes Kocher 8b07ba2a07 Merge m-c to inbound a=merge
a=release IGNORE BAD COMMIT MESSAGES
2017-05-19 15:18:51 -07:00
Michael Layzell 7d8410d3a5 Bug 1348401 - Make the PPrinting::ShowProgress IPC message async, r=mconley, r=billm
MozReview-Commit-ID: 5pK08I3itYa
2017-05-19 16:16:13 -04:00
Kartikaya Gupta 5d656fab0f Merge m-c to graphics
MozReview-Commit-ID: HvsAeMjJAIA
2017-05-19 09:30:48 -04:00
Kartikaya Gupta aca076b94b Merge m-c to graphics
MozReview-Commit-ID: DFNbcj14mg9

--HG--
rename : memory/mozjemalloc/jemalloc.c => memory/mozjemalloc/mozjemalloc.cpp
rename : memory/mozjemalloc/jemalloc_types.h => memory/mozjemalloc/mozjemalloc_types.h
2017-05-18 08:34:15 -04:00
Jeff Muizelaar b9411eb4eb Bug 1364626. Ensure our transaction arrives at the compositor before asking the parent to paint. r=dvander
This makes UpdateLayerTree synchronous enough to ensure that the layer
transaction from the child reaches the compositor. Given the comment in
http://searchfox.org/mozilla-central/rev/484d2b7f51b7aed035147bbb4a565061659d9278/dom/interfaces/base/nsIDOMWindowUtils.idl#106
this seems to be the original intent of this function anyways. Without this, we
can have a race between the child talking to the compositor and the child
talking to the parent talking to the compositor.

This also changes GetCompositorBridgeChild to work even when the widget doesn't
have a CompositorBridge
2017-05-17 10:45:33 -04:00
Jeff Muizelaar 0ed20eff4a Revert "Ensure our transaction arrives at the compositor before asking the parent to paint"
This reverts commit e0ec2a72700f.
2017-05-17 10:44:33 -04:00
Jeff Muizelaar b2c7a3fec1 Ensure our transaction arrives at the compositor before asking the parent to paint
This makes UpdateLayerTree synchronous enough to ensure that the layer
transaction from the child reaches the compositor. Given the comment in
http://searchfox.org/mozilla-central/rev/484d2b7f51b7aed035147bbb4a565061659d9278/dom/interfaces/base/nsIDOMWindowUtils.idl#106
this seems to be the original intent of this function anyways. Without this, we
can have a race between the child talking to the compositor and the child
talking to the parent talking to the compositor.

This also changes GetCompositorBridgeChild to work even when the widget doesn't
have a CompositorBridge
2017-05-17 10:42:09 -04:00
Henry Chang 8091c86b7e Bug 1364857 - Reject pending promises for actor when it's going to be destroyed. r=kanru
The lifetime of async IPDL returned promise may be longer than its actor.
That is, the handler (receiver) may have not resolve/reject the promise when the actor
is destroyed. In this case, we have to reject all the pending promises before
ActorDestroy() is called on the "sender" side.

Besides, the handler (receiver) can reject with reason "ActorDestroyed" to silently
cancel the promise without trying to reply to the remote actor which may
have died. The sender-side promise is responsible for rejecting the pending promises,
which will be done in MessageChannel::RejectPendingPromisesForActor().

MozReview-Commit-ID: 4XjmquZzDBO

--HG--
extra : rebase_source : 48539e35e4587e09be1d66497b1ea32d1a95ee9a
2017-05-17 16:59:48 +08:00
JW Wang f63d012078 Bug 1365517 - Remove the call to AbstractThread::GetCurrent() in TestAsyncReturns.cpp. r=kanru
See bug 1365483 for the rationale.

MozReview-Commit-ID: AGFtjTzRqvC

--HG--
extra : rebase_source : c8309d12fe8cbbc964f7bdf8b4e79683a1af6756
2017-05-17 15:34:20 +08:00
David Anderson 42e57ec6d3 Remove old device reset and compositor swapping code. (bug 1363126 part 3, r=rhunt) 2017-05-11 22:44:28 -07:00
David Anderson 27df5ad5bd Handle remote device resets by recreating the entire rendering stack. (bug 1363126 part 1, r=rhunt, ipc_r=billm) 2017-05-11 22:44:27 -07:00
David Anderson af30648746 Make PLayerTransaction's constructor async. (bug 1350634, ipc_r=billm, r=mattwoodrow, r=kats)
PLayerTransaction's constructor was previously synchronous so we could
return a TextureFactoryIdentifier. This is quite reliably available
already in the case of opening a tab, due to RenderFrameParent knowing
which compositor it is attached to, so we can make the constructor
asynchronous.

In the top-level widget case, we add a new synchronous message to find
the TextureFactoryIdentifier.
2017-05-05 10:53:17 -07:00
Phil Ringnalda 6b129efd40 Backed out changeset 867fcd3e181d (bug 1350634) for leaking in sessionstore's browser-chrome tests
MozReview-Commit-ID: 7NS2GkfZSp0
2017-04-30 21:14:10 -07:00
David Anderson d7a1f66c55 Make PLayerTransaction's constructor async. (bug 1350634, ipc_r=billm, r=mattwoodrow, r=kats)
PLayerTransaction's constructor was previously synchronous so we could
return a TextureFactoryIdentifier. This is quite reliably available
already in the case of opening a tab, due to RenderFrameParent knowing
which compositor it is attached to, so we can make the constructor
asynchronous.

In the top-level widget case, we add a new synchronous message to find
the TextureFactoryIdentifier.
2017-04-30 17:22:56 -07:00
Samael Wang d5dd0ed263 Bug 1337064 - Remove sync protocol PContent::AllocateTabId. r=kanru
Remove sync protocol AllocateTabId. Instead we generate tabId in
each process with nsContentUtils::GenerateTabId, and register
RemoteFrameInfo in parent process. If the tab id was generated from
a content process, it's sent parent through either PBrowserConstructor
or PContent::CreateChildProcess.

MozReview-Commit-ID: D3W2fK9eCNH

--HG--
extra : rebase_source : 1913f8f586537be1c82a70a19cc8c6351671d0df
2017-04-05 18:42:00 +08:00
Kan-Ru Chen 6c2259f717 Bug 1358697 - Don't capture the Promise raw pointer and make static analysis happy. r=billm
MozReview-Commit-ID: 7lMVMcNBDHJ

--HG--
extra : rebase_source : 3526408144e9d0486e0c212151682bc98275c8e5
2017-04-22 10:38:52 +08:00
Iris Hsiao d838010e1d Backed out changeset 2f0e513820c0 (bug 1358697) for build bustage 2017-04-25 10:04:11 +08:00
Kan-Ru Chen 3d7756c274 Bug 1358697 - Don't capture the Promise raw pointer and make static analysis happy. r=billm
MozReview-Commit-ID: 7lMVMcNBDHJ

--HG--
extra : rebase_source : 4ea2e25c3a7e1f49a79b9b994024c00494f78047
2017-04-22 10:38:52 +08:00
Kan-Ru Chen ffab50c6f8 Bug 1313200 - Allow IPC messages to async return MozPromises. r=billm,jwwang
This patch implements async returns for IPDL using MozPromises. There
are following changes:

* Initialize AbstractThreads for MessageLoops
* Record promises and their reject functions
  * When async message returns, call their resolve functions
  * When send error or channel close, call their reject functions
* Implement "unresolved-ipc-promises" count for about:memory
* Test cases

See bug attachment for generated code from test cases

MozReview-Commit-ID: 7xmg8gwDGaW

--HG--
rename : ipc/ipdl/test/ipdl/error/AsyncReturn.ipdl => ipc/ipdl/test/ipdl/ok/AsyncReturn.ipdl
extra : rebase_source : 9a5821d6c0e5f7152b8152a17a409b94e8258dc3
2017-03-16 17:36:15 +08:00
Sebastian Hengst 45fe002ab2 Backed out changeset 325bf1bf5a1f (bug 1313200) for Android and reftest bustage. r=backout
--HG--
rename : ipc/ipdl/test/ipdl/ok/AsyncReturn.ipdl => ipc/ipdl/test/ipdl/error/AsyncReturn.ipdl
2017-04-18 18:24:56 +02:00
Kan-Ru Chen 625b54086e Bug 1313200 - Allow IPC messages to async return MozPromises. r=billm,jwwang
This patch implements async returns for IPDL using MozPromises. There
are following changes:

* Initialize AbstractThreads for MessageLoops
* Record promises and their reject functions
  * When async message returns, call their resolve functions
  * When send error or channel close, call their reject functions
* Implement "unresolved-ipc-promises" count for about:memory
* Test cases

See bug attachment for generated code from test cases

MozReview-Commit-ID: 7xmg8gwDGaW

--HG--
rename : ipc/ipdl/test/ipdl/error/AsyncReturn.ipdl => ipc/ipdl/test/ipdl/ok/AsyncReturn.ipdl
extra : rebase_source : 55c4f68a3f8b7d0df5ca9f9c45b9a205b337282d
2017-03-16 17:36:15 +08:00
Aaron Klotz 6302f1af4a Bug 1322532: Add sync text event to PDocAccessible; r=tbsaunde, r=billm
MozReview-Commit-ID: AFZMYghoOHe

--HG--
extra : rebase_source : 2364cf4a5ecaaceda151e16df170aebb77ae55e9
2017-04-13 17:08:42 -06:00
raouldc b4261cfb61 Bug 1352576 - Removed all instances of NPN_GetAuthenticationInfo from the codebase r=bsmedberg
NPN_GetAuthenticationInfo is an NPAPI API we implemented for Java and since we only support Flash we no longer need it.

MozReview-Commit-ID: HxNn91QeaMB

--HG--
extra : rebase_source : 016320ce93bde525dbf1b74f50f8b60d141d31cd
2017-04-13 23:57:08 +12:00
Bill McCloskey cd7be5521e Bug 1349699 - Assert when destroying a MessageLoop that a live MessageChannel is attached to (r=dvander)
MozReview-Commit-ID: GGr5UqJl3ui
2017-04-11 13:15:07 -07:00
Kartikaya Gupta 5e82717849 Bug 1350638 - Remove the GetCompositorOptions IPC message as it is no longer used. r=dvander
MozReview-Commit-ID: 18uiWGA9eJy

--HG--
extra : rebase_source : 217697a0e63d8c02d78de894ff7f33850924e50c
2017-04-09 17:31:59 -04:00
Phil Ringnalda 3c97553fda Backed out 2 changesets (bug 1349699) for Win8 opt xpcshell crashes at mozilla::ipc::MessageChannel::WillDestroyCurrentMessageLoop
Backed out changeset 5cc766c0864e (bug 1349699)
Backed out changeset 13f1d3918fe5 (bug 1349699)
2017-04-03 22:54:59 -07:00
Bill McCloskey 754aae1913 Bug 1349699 - Assert when destroying a MessageLoop that a live MessageChannel is attached to (r=dvander)
MozReview-Commit-ID: GGr5UqJl3ui
2017-04-03 21:54:19 -07:00
Phil Ringnalda 884bc64271 Backed out 3 changesets (bug 1349699) for Android mozilla::ipc::MessageChannel::WillDestroyCurrentMessageLoop crashes
Backed out changeset 8a50c2d76afc (bug 1349699)
Backed out changeset 3b9eadd61e26 (bug 1349699)
Backed out changeset 16e000b3fe0c (bug 1349699)
2017-04-03 21:07:49 -07:00
Bill McCloskey c3bd8c6e5b Bug 1349699 - Assert when destroying a MessageLoop that a live MessageChannel is attached to (r=dvander)
MozReview-Commit-ID: GGr5UqJl3ui
2017-04-03 19:41:13 -07:00
David Anderson 0f3b97ed9c When using the GPU process, combine layer ownership and window mapping into a single IPC message. (bug 1350660 part 1, r=rhunt, r=billm) 2017-04-03 15:13:37 -07:00
Kan-Ru Chen 8ba424eabb Bug 1194751 - Part 6. Use mozilla::widget::ScreenManager in content process. r=mconley
This is the most important part of the patch series. It removes the
PScreenManager protocol and use ScreenManager directly in the content
processes.

Initial and subsequent updates are sent via PContent::RefreshScreens.
struct ScreenDetails are kept to serialize Screen over IPC.

nsIScreenManager::ScreenForNativeWidget is removed because
nsIWidget::GetWidgetScreen can replace it. nsIScreen::GetId is removed
because it's not useful for the more general Screen class.

MozReview-Commit-ID: 5dJO3isgBuQ

--HG--
extra : rebase_source : 06aa4e4fd56e2b2af1e7483aee7c0cc7f35bdb97
2017-03-09 19:30:26 +08:00
Chris Pearce 78f1197a59 Bug 1315850 - Add LaunchGMPForNodeId to allowed sync IPCs. r=kanru
This merges two existing off-main-thread sync IPCs into a single operation.  We
will change them into a single async operation in a follow up.

MozReview-Commit-ID: EfMozbRysGR

--HG--
extra : rebase_source : c7f5c395a719b9f3f13d398f8ca976b09f25ce49
2017-03-13 11:46:28 +13:00
Andrew McCreight 8153ed878d Bug 1348838 - Pass in errfnSentinel in verify checkedRead. r=kanru
MozReview-Commit-ID: A40h9VEakBM

--HG--
extra : rebase_source : da708cb63228fa663a7ee472e821fb6b9798cb88
2017-03-20 09:55:52 -07:00
Carsten "Tomcat" Book 492970c342 merge mozilla-inbound to mozilla-central a=merge 2017-03-23 13:44:09 +01:00
Eric Rahm 3693cc51e3 Bug 1349350 - Make IPDL checker sync IPC message errors fatal. r=ehsan
The IPDL sync IPC message error checker needs to actually return a result and
exit if it fails.

MozReview-Commit-ID: 1ZAuAWRlsvk
2017-03-22 15:01:50 -07:00
Eric Rahm 1ad9009da0 Bug 1347000 - Fix false-positive sync message not found errors on windows builds. r=billm
MozReview-Commit-ID: 6ZLCJKotqEE
2017-03-22 15:01:49 -07:00
Wes Kocher 9a54a919a0 Merge m-c to autoland, a=merge
MozReview-Commit-ID: 2LT2oEKZno8
2017-03-21 16:20:49 -07:00
Michael Layzell b6012319a5 Bug 1337056 - Part 10: Remove ReadPermissions from the sync-messages list, r=billm
MozReview-Commit-ID: 8Ki4KEHKnQm
2017-03-21 11:08:03 -04:00
Ehsan Akhgari 566751834a Bug 1346583 - Remove the PContent::Msg_OpenAnonymousTemporaryFile sync IPC; r=billm 2017-03-21 09:27:48 -04:00
Kearwood Gilbert b38d859652 Bug 1346926 - Make PVRManager::SetHaveEventListener async r=kanru
- There appears to be no issues with simply changing
  SetHaveEventListener from sync to async.

MozReview-Commit-ID: 3LKgDx9AZnm

--HG--
extra : rebase_source : 6c706f592f71a8c967a58f6906861fcff2525ebf
2017-03-21 13:21:17 -07:00
Kearwood Gilbert 4e410934af Bug 1346923 - Remove PVRManager::GetDisplays sync IPC r=daoshengmu,kanru
- PVRManager::GetDisplays was a sync IPC that was part of an optimization
  for a use case that has been eliminated by changes to the WebVR spec.
- This was an optimization for Navigator.activeVRDisplays that would allow
  enumeration of displays active in any content process without powering
  on any additional VR hardware.  This will no longer be necessary as the
  activeVRDisplays has been restricted to returning only the displays
  active in the current javascript context.

MozReview-Commit-ID: F6sOtM9nups

--HG--
extra : rebase_source : bd8967fab9677206d998eea922c8d1640551de1c
2017-03-15 16:40:57 -07:00
Andrew McCreight 042b6e5ca4 Bug 1347527, part 2 - Fix incorrect protocol name. r=kanru
This was causing the wrong error.

MozReview-Commit-ID: GQmuOOH55Ta

--HG--
extra : rebase_source : 1689af838857a9f08571fe3fc0a43c822abf242c
2017-03-15 06:24:53 -07:00
Andrew McCreight 04d2052106 Bug 1347527, part 1 - "can't use compression" IPDL error message doesn't have a closing paren. r=kanru
MozReview-Commit-ID: CONYxlOB2sP

--HG--
extra : rebase_source : 3c0784e9fd25c9bf2a67ec6fca9cb6d61730a9b9
2017-03-15 06:03:56 -07:00
Andrew McCreight d64b9bd504 Bug 1319620 - Check that IPDL unit tests in error/ fail for the right reason. r=billm
An IPDL unit test that is intended to fail should check that the
reason the test fails matches the expected reason for failure. We have
had a number of cases where some change, like renaming a keyword,
causes tests to start failing for the wrong reason, which means they
are no longer testing anything useful.

To support this, each file in error/ must contain one or more error
annotations. An error annotation is a line starting with "//error:",
followed by whatever the rest of the expected error is. For every one
of these annotations that a file has, the stderr output of compiling
the test must contain the specified string, including the "error:". It
is also an error for an error/ file to not contain an error
annotation.

To generate the initial set of annotations, I just copied and pasted
the error that each test produced. I did some light auditing to check
that the errors are reasonable, which did turn up one minor error
which I fixed as part of bug 1347527.

This patch does not check that every error produced by compiling the
file is in the list of expected errors. I think that's less of a
problem if it does occur.

MozReview-Commit-ID: BrePLGPPRil

--HG--
extra : rebase_source : 0ddb2f866c4b4ab74b7e975ce5877568c8cc3b62
2017-03-15 10:43:51 -07:00
Andrew McCreight a83e44233a Bug 1346958 - Eliminate PickleIterator::operator= calls. r=kanru
MozReview-Commit-ID: BGJUt9NG3GX

--HG--
extra : rebase_source : 0eb1dfb289c009097357e99bd84dbc83f6755997
2017-03-13 14:24:45 -07:00
Kearwood Gilbert 5441d7848d Bug 1345564 - Reduce sync IPC calls used by WebVR r=daoshengmu,Ehsan,kanru
- Eliminated the VRDisplay.GetImmediateSensorState sync call
  and associated code as it is no longer needed.

MozReview-Commit-ID: 7BsCKC9EbsY

--HG--
extra : rebase_source : ae2de369d156e397d919d83b6c63b10374953bae
2017-03-03 16:21:18 -08:00
Andrew McCreight 6634f11883 Bug 1345977 - Add unused message to PTestSyncHang to prevent compiler warning. r=billm
Adding this unused message prevents a compiler warning
about the private field mState being unused.

Also, get rid of some trailing whitespace.

MozReview-Commit-ID: Lb43JQhIbJU

--HG--
extra : rebase_source : c76eb5383a1535c79f2a66d3d6f8454e5b61d945
2017-03-10 14:34:19 -08:00
Andrew McCreight 50ab94e943 Bug 1345897 - Use a separate error function for sentinel errors. r=kanru
Using a separate error function will distinguish mismatched sentinels
from other errors, such as array length problems.

MozReview-Commit-ID: Gl8swNhqLns

--HG--
extra : rebase_source : 494759b105086c6c26f3ac53fb644bbf51c12800
2017-03-09 13:37:55 -08:00
Andrew McCreight 91a4a0b1a5 Bug 1346345 - Implement != operator for IPDL structs. r=kanru
MozReview-Commit-ID: H1CDbuXZ5U0

--HG--
extra : rebase_source : 88005a00cf7c9625179b63354d8947635fcf8d2a
2017-03-10 11:42:07 -08:00
Ehsan Akhgari e559e3333d Bug 1343731 - Remove the sync IPC during DataStorage initialization; r=keeler,billm
Instead of initializing DataStorage objects on demand in the content
process, we initialize them at content process startup by getting the
parent to send down the information about the existing DataStorages at
child process startup.  After that point, the dynamic change
notifications added in bug 1215723 will take care of keeping the
information in sync.
2017-03-10 22:35:07 -05:00
Ehsan Akhgari 5ab5fb52c4 Bug 1342636 - Part 3: Remove the GetCurrentScreenConfiguration sync IPC message; r=billm 2017-03-10 21:29:04 -05:00
Michael Layzell 3acb9e3b8a Bug 1342635 - Part 2: Add a telemetry probe for IPDL IPC serialzation time, r=billm
MozReview-Commit-ID: Gyx4QO8f5yx
2017-03-10 09:15:26 -05:00
Michael Layzell 657e5bfebf Bug 1342635 - Part 1: Add a telemetry probe for IPDL IPC deserialization time, r=billm
MozReview-Commit-ID: 8XWFWoRECrC
2017-03-10 09:15:26 -05:00
Ehsan Akhgari dcb0bf572d Bug 1345497 - Remove the unused PVRManager::GetControllers sync IPC; r=kip,billm 2017-03-09 23:26:47 -05:00
Ehsan Akhgari cc09372649 Bug 1345111 follow-up: Add a few platform-specific sync IPC messages back; fake-r=billm 2017-03-08 23:27:47 -05:00
Ehsan Akhgari 0946cb8425 Bug 1345111 - Make the IPDL compiler error out when it finds sync-messages.ini entries without corresponding IPDL sync messages; r=billm
This ensures that our sync-messages.ini correctly reflects the existing set of
sync IPC messages we have.
2017-03-08 22:43:35 -05:00
Andrea Marchesini 12b54aa0f5 Bug 1299500 - Get rid of DeviceStorage API - part 10 - DeviceStorage, r=ehsan, r=billm 2017-03-08 20:15:45 +01:00
Wes Kocher ee0cad3420 Backed out changeset 2288120b007e (bug 1345111) for Windows build failures a=backout
MozReview-Commit-ID: IcBrJg6Ff8T
2017-03-07 17:28:01 -08:00
Ehsan Akhgari 0899f728cc Bug 1345111 - Make the IPDL compiler error out when it finds sync-messages.ini entries without corresponding IPDL sync messages; r=billm
This ensures that our sync-messages.ini correctly reflects the existing set of
sync IPC messages we have.
2017-03-07 20:13:29 -05:00
Andrew McCreight e5898d34c7 Bug 1342580 - Don't generate actor "state" method. r=kanru
MozReview-Commit-ID: 8Am8TIQfH0h

--HG--
extra : rebase_source : bcd0458573c2aa48908f1407ad3e7e72870c94aa
2017-02-24 15:35:35 -08:00
Eitan Isaacson 650a105b84 Bug 1337077 - Remove sync state transfer of SpeechSynthesis. r=smaug
MozReview-Commit-ID: LMjZOEjeg8Q

--HG--
extra : rebase_source : 62b456a917ccdf767a8242ad88652e84881d0d10
2017-02-23 10:18:21 -05:00
David Parks 8e150e4643 Bug 1284897 - Hook GetSaveFileNameW/GetOpenFileNameW to record and grant a sandboxed process permission to access user-chosen files. r=jimm
--HG--
extra : rebase_source : 024eae9f9657579debd38baba1526acfdca2385a
2017-02-08 11:38:40 -08:00
Kartikaya Gupta 8ec93b1895 Bug 1340067 - Follow-up to delist a formerly sync message that is now async. r=dvander?
MozReview-Commit-ID: CcKSgmSy2hA
2017-02-21 11:00:41 -05:00
Kan-Ru Chen 09858c1716 Bug 1336919 - Add a sync message whitelist and check it in IPDL compile phase. r=billm
MozReview-Commit-ID: ENFkBzpGo2j
2017-02-20 10:40:54 +08:00
Blake Kaplan 7f89fb24f2 Bug 1335989 - Avoid a second copy when sending substrings through IPC. r=billm
MozReview-Commit-ID: HF27bYPH7Uq

--HG--
extra : rebase_source : 3b919d462068d76862e38401be1db9add1aebd05
2017-02-15 16:26:04 -08:00
Carsten "Tomcat" Book b218b4c6ae merge mozilla-inbound to mozilla-central a=merge 2017-02-16 13:15:55 +01:00
Wes Kocher 3797956aa6 Merge m-c to inbound a=merge
MozReview-Commit-ID: BemR756HJnR
2017-02-15 16:33:03 -08:00
Bill McCloskey ce7bbe01fe Bug 1339224 - Give names to built-in IPC messages (r=kanru)
MozReview-Commit-ID: DEC2gXK6o0M
2017-02-15 12:30:01 -08:00
Andrew McCreight 90506fcef4 Bug 1338594 - Add more basic IPDL tests. r=kanru
MozReview-Commit-ID: 2hS9GoTSyb8

--HG--
extra : rebase_source : f3dc85bfa524e7f8316446f9162b2481cba472c9
2017-02-09 08:49:33 -08:00
Andrew McCreight 0a919fc483 Bug 1338728 - Don't check for delete in CheckTypes. r=kanru
GatherDecls also checks for it.

MozReview-Commit-ID: AmCdcUE1EMu

--HG--
extra : rebase_source : 1d27f3e35369a90ac37ab4cbca3f393187a25107
2017-02-10 16:39:55 -08:00
Andrew McCreight e8691e4e82 Bug 1338915 - Print a more specific message for invalid compression. r=kanru
MozReview-Commit-ID: IeSOZNBDkSR

--HG--
extra : rebase_source : 968129bfcdf5d2316537da50514b16b942604648
2017-02-14 08:54:27 -08:00
Andrew McCreight a03c79af0a Bug 1339477 - Add more IPDL unit tests. r=kanru
--HG--
extra : rebase_source : 3e06de7f11cd51633e58639951254dbfe0cf0fe8
2017-02-14 08:34:04 -08:00
Andrew McCreight 854e3bed0e Bug 1328421 - Replace MessageId with ID in the IPDL parser. r=billm
MozReview-Commit-ID: YHfxmB1McY

--HG--
extra : rebase_source : e3d96ab8d56e47535268a71457ec4aa25ef98658
2017-02-14 09:53:25 -08:00
Andrew McCreight a090af81d1 Bug 1338592 - Use .nested, not .nestedRange on Protocol. r=billm
The parser always sets the first value of the tuple .nestedRange to
NOT_NESTED, so there's no need to actually store it. Instead, we
create a range when we're creating the ProtocolType. This makes it
clearer what is happening. The range is needed for the type because
the nesting pair is compared with those from messages, where the first
element can be something else.

Prior to bug 1306708, the lower range could be specified in the IPDL
file, but all uses were NOT_NESTED, so I suppose that is why it was
eliminated.

Note that the constructor for Protocol sets .nested to NOT_NESTED, but
prior to my patch, the field was never used. The constructor also
never initialized .nestedRange, but the parser always sets it so that
isn't much of an issue.

MozReview-Commit-ID: FMnoZRrkfoA

--HG--
extra : rebase_source : 3adb64b27d4a7a4e9c6c7695b145136813dbed5d
2017-02-10 09:12:42 -08:00
Bevis Tseng ee3c2357de Bug 1338455 - SetManager in prior to Register to Inherit EventTarget from Manager. r=billm
MozReview-Commit-ID: DkbhLm4g939
2017-02-10 15:42:45 +08:00
Andrew McCreight 490c8baf66 Bug 1336589 - Don't check struct decls from an included file in the context of the includee. r=billm
See MutRecHeader1.ipdlh for a more detailed explanation.

MozReview-Commit-ID: JHYd7qKSjrr

--HG--
extra : rebase_source : 2d405b3cb4384d6c815fe1634216682fd828f930
2017-02-08 11:07:24 -08:00
Andrew McCreight de95dbd061 Bug 1337536 - MessageType ctor assert should check cdtype. r=billm
type is some existing Python object, so this assertion can never fail.

Looking at GatherDecls::visitMessageDecl, I think this is supposed to
be checking cdecl.

MozReview-Commit-ID: 8Oppw5SYdWO

--HG--
extra : rebase_source : d2e5d6c4f22a490e14f668a1f6ed28738dc56ca8
2017-02-07 14:15:31 -08:00
Andrew McCreight 9a8abaf744 Bug 1337914 - Add dummy argument to IPDLUnitTestProcessChild::Init. r=kanru
This fixes a build error.

MozReview-Commit-ID: DMc4lwtuipo

--HG--
extra : rebase_source : 2686efb3e8fccc090b8fbfa352838d13b7709610
2017-02-08 12:26:20 -08:00
Andrew McCreight 621a063c39 Bug 1335886, part 4 - Remove the unused node arg to {enter,exit}Scope. r=billm
MozReview-Commit-ID: Fuj3RrnBBwV

--HG--
extra : rebase_source : 4dff4f1dc4a52f8d53637442995ebabd66cdf9b8
2017-02-01 13:07:59 -08:00
Andrew McCreight baf5f306e7 Bug 1335886, part 3 - Don't use symtab property to avoid infinite recursion. r=billm
Instead, just stick a "visited" property on them. The symtab property
on nodes isn't used for any other purpose.

The next patch will eliminate the unused args to enterScope and
exitScope.

MozReview-Commit-ID: 3WW2NPVB0gM

--HG--
extra : rebase_source : 2c2add652e1156a397a155c74015671877af3690
2017-02-01 12:50:02 -08:00
Andrew McCreight 4f5c5e3153 Bug 1335886, part 2 - Nodes never have existing symbol tables in enterScope. r=billm
This code gets deleted in the next patch, but the point here is that
we can still compile Firefox with this assertion in place.

MozReview-Commit-ID: 33dw0xm7L4R

--HG--
extra : rebase_source : 140fca3b0b5abf5b3d6636ea63bae2adf1311b09
2017-02-01 11:51:43 -08:00
Andrew McCreight 77ff8c47bf Bug 1335886, part 1 - Set symtab on GatherDecls instead of TcheckVisitor. r=billm
It is always initially set to None, and the other subclass of
TcheckVisitor (CheckTypes) never uses it.

MozReview-Commit-ID: CKxXoHXopqF

--HG--
extra : rebase_source : 2422e31fb99f894948da01a0bcd7d5a2bf92ceb7
2017-02-01 11:56:03 -08:00
Andrew McCreight 79c6450803 Bug 1336180 - Remove obsolete references to .type attribute in type.py. r=billm
MozReview-Commit-ID: KZiSLMOj4x4

--HG--
extra : rebase_source : 353340d2927bbefcb3365bc30636bead9b019a1f
2017-02-01 14:55:50 -08:00
Andrew McCreight 5f5807e1c3 Bug 1316755, part 2 - Remove bridges, opens and spawns from IPDL. r=billm
MozReview-Commit-ID: 2BDEXV0r8QB

--HG--
extra : rebase_source : 286b10988daab138b18f816149853b43069df65e
2017-01-26 16:43:27 -08:00
Andrew McCreight cd7431a68e Bug 1316755, part 1 - Remove IPDL unit tests that use bridges, opens, and spawns. r=billm
MozReview-Commit-ID: 3Te6nPOhYss

--HG--
extra : rebase_source : 3b8bf30e9f0c3c7c962a73fd8043af8152ebc93a
2017-01-26 16:30:18 -08:00
Andrew McCreight 7ebc34bfc2 Bug 1335103 - Remove spurious usage of Actor in lower.py. r=billm
Actor is used in the process checking code, which will get deleted in
a separate bug. Instead, just convert the actor name + side to a
string manually.

MozReview-Commit-ID: 9zfD4MuscVw

--HG--
extra : rebase_source : 95037d1db717618ebb34ec44832e9d2498815ebd
2017-01-27 15:48:52 -08:00
Andrew McCreight 92628f1901 Bug 1334720 - Remove some unused IPDL code generator methods. r=jld
MozReview-Commit-ID: 4PRMjdjyFM8

--HG--
extra : rebase_source : 47592a3ee082a52b075c1d659754e07369e98d52
2017-01-26 17:05:10 -08:00
Bill McCloskey 4fd9d369d6 Bug 1331804 - Change default IPC message name to make it clearer (r=kanru)
MozReview-Commit-ID: 69l9FuqgSTV
2017-01-24 16:34:37 -08:00
Andrew McCreight a619072cc3 Bug 1332445 - Get rid of SymbolTable::globalScope. r=kanru
MozReview-Commit-ID: Ar69yiCqJnT

--HG--
extra : rebase_source : 33a19aaf6f1586bd1c023cfe7637201ea6774301
2017-01-23 10:52:22 -08:00
Andrew McCreight d6a0e6b709 Bug 1332486, part 3 - Merge CxxType into ImportedCxxType. r=kanru
MozReview-Commit-ID: 2lrVvDZJYhD

--HG--
extra : rebase_source : 1049108315123e3ade71d828cca5fc2f5c023a40
2017-01-23 10:45:11 -08:00
Andrew McCreight 656a6d5bf6 Bug 1332486, part 2 - Remove some type predicates that are never used. r=kanru
MozReview-Commit-ID: 89S5cZqaguH

--HG--
extra : rebase_source : 599d40bfb53ecdadb57902bcde3ab7c3ef3bb970
2017-01-23 10:42:17 -08:00
Andrew McCreight 44f6bf8952 Bug 1332486, part 1 - Remove the unused BuiltinCxxType. r=kanru
MozReview-Commit-ID: JRrWI26xWCy

--HG--
extra : rebase_source : 7be6512436e66075d900477f30057182de34483d
2017-01-23 10:39:39 -08:00
Mike Hommey f9c3dd278b Bug 1332523 - Make the Bootstrap API entry point the same for both dependent and standalone linkage. r=bsmedberg
--HG--
extra : rebase_source : 21d9371dfa0a7ed7ff056d8486f28c978df8932d
2017-01-13 07:29:56 +09:00
Andrew McCreight 09bbd9cfe3 Bug 1331787 - Make IPDL aborts fatal in release builds. r=billm
MozReview-Commit-ID: JSgNXtnjNxv

--HG--
extra : rebase_source : fbe1cbf05b0a7f50c26b57a1800bddbdd6e49469
2017-01-17 15:42:30 -08:00
Mike Hommey 09dc362a61 Bug 1306327 - Use the new XRE Bootstrap API in Desktop Firefox. r=bsmedberg
This just wraps all the XRE method calls to go through the Bootstrap API
instead of relying on the XPCOM glue methods.

--HG--
extra : rebase_source : eccbe18b9b21ca1ab6c403515ffd60f0a9174d9c
2016-12-16 11:10:02 +09:00
Nathan Froyd d489d17c87 Bug 1322553 - part 3 - add profiler start/end markers for sync IPC; r=mstange
This is gnarly IPDL code, but the generated code is probably easier to
review.  Before when sending a sync message, we had:

    bool sendok__ = (GetIPCChannel())->Send(msg__, (&(reply__)));
    if ((!(sendok__))) {
        return false;
    }

Now, we have:

    bool sendok__;
    {
        GeckoProfilerTracingRAII syncIPCTracer(
                "IPC",
                "PJavaScript::Msg_PreventExtensions");
        sendok__ = (GetIPCChannel())->Send(msg__, (&(reply__)));
    }
    if ((!(sendok__))) {
        return false;
    }
2017-01-07 15:56:49 -05:00
Andrew McCreight f27d72c33d Bug 1323468, part 4 - inline |from| in Transition. r=kanru
MozReview-Commit-ID: LwcpNikbe2b

--HG--
extra : rebase_source : 25ace3d2f3e408ca48c72f6e8ea11217990a6f12
2016-12-14 11:15:05 -08:00
Andrew McCreight d0dc5ef0a4 Bug 1323468, part 3 - Change the return type of Transition to void. r=kanru
This function either crashes or returns true.

MozReview-Commit-ID: IX2MPbgLal0

--HG--
extra : rebase_source : f199280e2670c2d28357ea67523ae0336c160551
2016-12-14 10:27:22 -08:00
Andrew McCreight 888e432b17 Bug 1323468, part 2 - Pass the message id directly to Transition and eliminate Trigger. r=kanru
MozReview-Commit-ID: GU3lXP3eRh6

--HG--
extra : rebase_source : c01247a988cc80cf2739c10a44dc0a971495e528
2016-12-14 10:09:47 -08:00
Andrew McCreight 2a9fd5cd2a Bug 1323468, part 1 - Remove some unused variables from genTransitionFunc. r=kanru
MozReview-Commit-ID: 7aoV1jcO5Sn

--HG--
extra : rebase_source : f184797c0408890f0360651e8c233cef89896515
2016-12-14 09:41:33 -08:00
Andrew McCreight d00682b3cf Bug 1321029 - State::__Error is no longer used. r=kanru
MozReview-Commit-ID: 3HfwUrcGeTv

--HG--
extra : rebase_source : 67941c9703cba52938c0ba92c69288da95dde54b
2016-11-28 15:39:11 -08:00
Carsten "Tomcat" Book fd4709f9c1 merge mozilla-inbound to mozilla-central a=merge 2016-12-14 16:41:28 +01:00
Bill McCloskey 67bf1ff2ba Revert "Bug 1319271 - Return early in Send__delete__ method when Send fails. r=billm"
This reverts commit 8807f9ccde574d50a142ac9378890cc7ac5b68e2.
2016-12-13 16:46:32 -08:00
Kan-Ru Chen 4fa8f3b74f Bug 1319271 - Return early in Send__delete__ method when Send fails. r=billm
Only for the async version.

MozReview-Commit-ID: GOVSpzT3JlX
2016-12-07 12:12:43 -10:00
Tomislav Jurin 348bfffc19 Bug 1296189 - Replace NS_RUNTIMEABORT("some string literal message") with MOZ_CRASH(). r=froydnj 2016-12-02 13:46:53 -08:00
Andrew McCreight f03404b039 Bug 1321010 - Remove two minor bits of deritrus from IPDL Python code. r=kanru
The bug referred to in the comment was fixed 6 years ago.

The includes in cgen.py are unused.

--HG--
extra : rebase_source : f4521112ee3f2280836ac7030b25ddcba2321eda
2016-11-28 15:16:57 -08:00
Andrew McCreight 3b21f2993f Bug 1316757, part 7 - Remove IPDL state machine from frontend. r=billm
This patch removes all user-specified state machine support from the
IPDL parser, then deletes all of the code related to it from the AST,
type checking, and code generation. The default state machine code
relating to tracking whether the protocol is dead or not will still be
generated. In fact, this patch should not change the code that is
generated for any protocol that does not use the custom state machine
syntax.

MozReview-Commit-ID: 1fABHR3zJx

--HG--
extra : rebase_source : a2c6655e767741eb7d697e55548c2409a4bdff12
2016-11-23 15:04:09 -08:00
Andrew McCreight 0492d18521 Bug 1316757, part 6 - Comment out various race-related state machines. r=billm
The state machine stuff provides a decent compact overview of where
races are supposed to happen, so I just commented them out.

MozReview-Commit-ID: 1K5mw2kyXWb

--HG--
extra : rebase_source : db3fea5e80c47e04c103b1231077bd9b2c62c4d4
2016-11-23 14:58:49 -08:00
Andrew McCreight ff229fdc74 Bug 1316757, part 5 - Comment out simple uses of state machine from cxx/ unit tests. r=billm
MozReview-Commit-ID: 3Ce1nte6EoN

--HG--
extra : rebase_source : ef8f0b1e5d7c9016151f3dcf08398456b929420d
2016-12-13 13:07:38 -08:00
Andrew McCreight 2f16f62dfe Bug 1316757, part 4 - Remove trivial state machines from IPDL unit tests. r=billm
MozReview-Commit-ID: GJgfzQ8CArj

--HG--
extra : rebase_source : 87aa940d87dd2286168699a0a25508bcb34dbdc2
2016-11-23 09:13:46 -08:00
Andrew McCreight a3d8276ca3 Bug 1316757, part 3 - Delete IPDL unit tests that look like they only test state machine stuff. r=billm
MozReview-Commit-ID: 7Lek3YzLIft

--HG--
extra : rebase_source : 16a53cbd579554a82b84ee28f638b3517537e413
2016-11-23 09:10:45 -08:00
Andrew McCreight c5c7f69cf3 Bug 1316757, part 2 - Remove assertions involving state() from cxx/ unit tests. r=billm
With the removal of state machines, the state() method is no longer
supported, so these assertions must be removed.

MozReview-Commit-ID: 4HV8cQqowlp

--HG--
extra : rebase_source : 512c740e7a7de8904b237d745cddea82dc82a603
2016-11-28 13:43:09 -08:00
Andrew McCreight 4bf21b65b7 Bug 1320833 - Only generate State enum case for PFoo::State::__Dying when hasReentrantDelete(). r=kanru
MozReview-Commit-ID: DpxXD7y8GpD

--HG--
extra : rebase_source : ae9044309196f8c799674d85ebe0db869b4207f4
2016-11-28 15:49:26 -08:00
Andrew McCreight 5a67cdbd4f Bug 1320835 - Remove unused _getcallerpath from IPDL's parser.py. r=kanru
MozReview-Commit-ID: APiXElSQGQ1

--HG--
extra : rebase_source : e8a3c140ff9594f34e76809c72e2f6567285c455
2016-11-28 14:47:57 -08:00
Andrew McCreight f91a03949a Bug 1320755 - Remove dependence of IPDL unit tests on state() method. r=dvander
The uses of state() in TestHangs and TestStackHooks only have two
states, depending on how many times the method has been called.

Two uses of state() have to be fixed in TestLatency. Each waits for 5
messages, then resets the state and sends replies.

MozReview-Commit-ID: 7Glj7wbl1ni

--HG--
extra : rebase_source : 55a88a9b31b2effc8af5629262a5f4d34987ba40
2016-11-23 15:21:58 -08:00
Andrew McCreight ced5e33c0a Bug 1319910 - Crash child, not parent, on FatalError in TestActorPunning and TestBadActor. r=billm
The parent process crashes if it gets a bad message from the child,
but that makes it hard to test. This patch overrides the fatal error
handling method and uses the old behavior, that kills the child.

I copied the code to kill the child from TestHangs.

MozReview-Commit-ID: 3YgqaCgHGI0

--HG--
extra : rebase_source : cbecee2742014e969c641b89833cff5f46b99a33
2016-11-23 13:40:04 -08:00
Andrew McCreight 1cb2f34ca9 Bug 1319595, part 7 - Remove obsolete test. r=billm
Bill said it is okay to declare interrupt parent-to-child messages now.

MozReview-Commit-ID: 5Ma6pfkUZmt

--HG--
extra : rebase_source : 68fd3f51a9154136003871425762816593d66139
2016-11-22 16:06:11 -08:00
Andrew McCreight 35d5402bc4 Bug 1319595, part 6 - Fix various IPDL tests. r=billm
managerNoCtor.ipdl: Add a message so that parsing doesn't just fail
immediately with a syntax error.

shmem_access_union.ipdl: Remove this test, which involves the
semi-removed ACL feature for shmem.

oldIncludesyntax.ipdl: To be safe, make the protocol more valid by
adding a message.

multimanNonexistentMgrs.ipdl: Make the name of the protocol match the
name of the file.

MozReview-Commit-ID: 9zx5fmAWIIc

--HG--
extra : rebase_source : a5b9b9f19bc0329a06ca4ff8be3ef4b879054dd9
2016-11-22 15:26:08 -08:00
Andrew McCreight 554d2bf9c1 Bug 1319595, part 5 - Rename rpc to interrupt in IPDL error/ unit tests. r=billm
Change message annotations from "rpc" to "intr" to match the current
name, and similarly rename the protocols and the files.

MozReview-Commit-ID: Dd9ikvAHMnV

--HG--
extra : rebase_source : 0b2d57ca2c4405319f4ecd6ba2f633128355b381
2016-11-22 15:01:33 -08:00
Andrew McCreight 6d897bf5ca Bug 1319595, part 4 - Fix type checker handling of end points without qualifiers. r=billm
If qname has no quals, then fullname would be None, which breaks the
string concatenation in parentEndpointDecl and childEndpointDecl, even
if no endpoints are declared. This patch uses the short name if there
are no quals, while preserving the behavior that we want to pass None
into declare for fullname.

MozReview-Commit-ID: 9nuO8GWhBRH

--HG--
extra : rebase_source : df7e8b80d06b5cf1d4905624c0a3c4eac6703612
2016-11-22 13:55:59 -08:00
Andrew McCreight 025b63715a Bug 1319595, part 3 - Allow including a type twice as long as it is from the same file both times. r=billm
This patch fixes multipleUsingCxxTypes.ipdl. This is a regression from
bug 918651.

MozReview-Commit-ID: 3ByBvp6FZUe

--HG--
extra : rebase_source : 8038d8662360a8f12e571716eb7c59d2b3754508
2016-11-22 14:25:04 -08:00
Andrew McCreight 175c88a5d3 Bug 1319595, part 2 - Add async annotations to IPDL unit tests. r=billm
As of bug 1240871 these are no longer optional.

MozReview-Commit-ID: 2r2uxJP9dDr

--HG--
extra : rebase_source : 6ca55ae336a7c7d37764b657333e331f3b6158c9
2016-11-22 14:05:19 -08:00
Andrew McCreight 05edbf70f3 Bug 1319595, part 1 - Remove IPDL error tests involving state machine or bridge/open. r=billm
MozReview-Commit-ID: 4TUWBGzh3eJ

--HG--
extra : rebase_source : 1e7bed9deaec652e7aafab03860e58a2c3b10716
2016-11-22 14:01:34 -08:00
Phil Ringnalda 109396b4d6 Backed out changeset a9856363aac7 (bug 1319271) for opt Windows crashes in plugin tests 2016-11-25 21:17:57 -08:00
Kan-Ru Chen f58e35a5a9 Bug 1319271 - Return early in Send__delete__ method when Send fails. r=billm
MozReview-Commit-ID: GOVSpzT3JlX
2016-11-25 10:16:31 +08:00
Andrew McCreight 09ae562045 Bug 1319615 - Delete trailing whitespace from some IPDL files. r=billm
MozReview-Commit-ID: Jetx4ARsSZZ

--HG--
extra : rebase_source : dca27fc488f1d87ee51d08a32c3f476a62930cb8
2016-11-21 13:33:34 -08:00
Andrew McCreight f26fee6332 Bug 1319582 - Fix misspelling of hierarchy in IPDL error message. r=billm
MozReview-Commit-ID: HmTrQKlA60D

--HG--
extra : rebase_source : 82bf612dd22caf5898d04c8b628de5b645df0863
2016-11-22 15:12:05 -08:00
Mike Hommey aa465311ee Bug 1319350 - Add dedicated targets for some one-offs in the build. r=mshal
--HG--
extra : rebase_source : 5094663983fbdf4c3f95b685945c6be4cf3b179e
2016-11-22 16:55:58 +09:00
Bill McCloskey 92bc2d9707 Bug 1317844 - Allow an event target to be specified for each IPC actor (r=dvander)
MozReview-Commit-ID: 1xuWFTS8skZ
2016-11-21 17:03:39 -08:00
Bill McCloskey ce28731f8b Revert "Bug 1317844 - Allow an event target to be specified for each IPC actor (r=dvander)"
This reverts commit 30396b9e84304ad7ee7d5a253ec886325a0f0cbe.
2016-11-21 16:49:44 -08:00