gecko-dev/ipc/mscom
Aaron Klotz c084ff85e4 Bug 1508468: Convert launcher process to use mozilla::Result for error propagation; r=mhowell
This patch does a couple of things:

* I added a new class, |WindowsError| to WinHeaderOnlyUtils. The idea here is
  to encapsulate as much of the Windows error gamut as possible into one class.
  Since Win32 errors and NTSTATUS codes may both be encoded as HRESULTs, I
  used the latter type to store the error. It also contains functions for
  converting between the various error code formats, as well as stringification
  via FormatMessage.

* I added |LauncherError| which also includes file and line number information,
  which I believe will be important for launcher process failure diagnostics.
  (Instantiation of LauncherErrors obviously must be done via macros to capture
  __FILE__ and __LINE__).

* I then converted all of the launcher process code (and its few depenencies) to
  utilize this new functionality via the new |LauncherResult| type.

* If we detect an error in one of the top-level launcher process functions, we
  pass it to |HandleLauncherError| for processing. This function currently just
  throws up a |MessageBox| like the previous code did, with the intention of
  enhancing that further in the future.

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

--HG--
extra : moz-landing-system : lando
2018-11-20 23:49:36 +00:00
..
oop Bug 1090497 - Re-enable warnings as errors on clang-cl. r=froydnj 2018-07-31 22:10:07 +09:00
ActivationContext.cpp Bug 1465585: Switch from mozilla::Move to std::move. r=froydnj 2018-06-01 10:45:27 +02:00
ActivationContext.h Bug 1466168: Remove mozilla::Forward in favor of std::forward. r=froydnj 2018-06-02 09:33:26 +02:00
Aggregation.h
AgileReference.cpp Bug 1489317: Part 4 - Add asssertion that COM is initialized on the thread that is resolving an agile reference; r=mhowell 2018-09-12 18:56:10 +00:00
AgileReference.h Bug 1489317: Part 2 - Improvements to mscom::AgileReference; r=froydnj 2018-09-12 18:55:39 +00:00
AsyncInvoker.h Bug 1466168: Remove mozilla::Forward in favor of std::forward. r=froydnj 2018-06-02 09:33:26 +02:00
COMApartmentRegion.h Bug 1508468: Convert launcher process to use mozilla::Result for error propagation; r=mhowell 2018-11-20 23:49:36 +00:00
COMPtrHolder.h Bug 1348273 - Convert crash annotations into a machine-readable list of constants; r=ted.mielczarek,njn,dholbert,mak,cpearce,mcmanus,froydnj,Dexter,jrmuizel,jchen,jimm,bz,surkov 2018-07-05 15:42:11 +02:00
DispatchForwarder.cpp Bug 1465585: Switch from mozilla::Move to std::move. r=froydnj 2018-06-01 10:45:27 +02:00
DispatchForwarder.h
EnsureMTA.cpp
EnsureMTA.h
FastMarshaler.cpp Backed out changeset c055d7b57071 (bug 1434822) for causing 1442523. a=backout 2018-03-02 11:27:55 +02:00
FastMarshaler.h
IHandlerProvider.h Bug 1434822 part 2: mscom: Add a function to disconnect all remote clients associated with a given target. r=aklotz 2018-02-19 16:08:57 +10:00
Interceptor.cpp Bug 1496758 - Fix few compilation warnings in ipc code. r=handyman,Jamie 2018-10-10 04:31:35 +00:00
Interceptor.h Bug 1465585: Switch from mozilla::Move to std::move. r=froydnj 2018-06-01 10:45:27 +02:00
InterceptorLog.cpp Bug 1465585: Switch from mozilla::Move to std::move. r=froydnj 2018-06-01 10:45:27 +02:00
InterceptorLog.h
MainThreadClientInfo.cpp
MainThreadClientInfo.h
MainThreadHandoff.cpp Bug 1496758 - Fix few compilation warnings in ipc code. r=handyman,Jamie 2018-10-10 04:31:35 +00:00
MainThreadHandoff.h Bug 1465585: Switch from mozilla::Move to std::move. r=froydnj 2018-06-01 10:45:27 +02:00
MainThreadInvoker.cpp Bug 1496758 - Fix few compilation warnings in ipc code. r=handyman,Jamie 2018-10-10 04:31:35 +00:00
MainThreadInvoker.h Bug 1466168: Remove mozilla::Forward in favor of std::forward. r=froydnj 2018-06-02 09:33:26 +02:00
MainThreadRuntime.cpp Bug 1458314 - Move the update directory to an installation specific location r=rstrong 2018-10-23 21:41:04 +00:00
MainThreadRuntime.h
Objref.cpp
Objref.h
PassthruProxy.cpp Bug 1488701 - Remove misleading std::move's - r=froydnj 2018-09-06 08:28:34 +00:00
PassthruProxy.h
ProxyStream.cpp Bug 1496758 - Fix few compilation warnings in ipc code. r=handyman,Jamie 2018-10-10 04:31:35 +00:00
ProxyStream.h
Ptr.h Bug 1465585: Switch from mozilla::Move to std::move. r=froydnj 2018-06-01 10:45:27 +02:00
Registration.cpp Bug 1466168: Remove mozilla::Forward in favor of std::forward. r=froydnj 2018-06-02 09:33:26 +02:00
Registration.h
RegistrationAnnotator.cpp Backed out changeset bee1c344cb47 (bug 1491909) for failures in browser/components/extensions/test/xpcshell/test_ext_geckoProfiler_control.js 2018-10-24 04:23:13 +03:00
RegistrationAnnotator.h
SpinEvent.cpp Bug 1486039 - use a more-portable idiom for pausing in SpinEvent::Wait; r=aklotz 2018-08-28 09:27:57 -04:00
SpinEvent.h
StructStream.cpp
StructStream.h Bug 1440564: mscom::StructToStream: Free the buffer when destroying the instance. r=aklotz 2018-02-23 20:00:30 +10:00
Utils.cpp Bug 1489317: Part 4 - Add asssertion that COM is initialized on the thread that is resolving an agile reference; r=mhowell 2018-09-12 18:56:10 +00:00
Utils.h Bug 1489317: Part 4 - Add asssertion that COM is initialized on the thread that is resolving an agile reference; r=mhowell 2018-09-12 18:56:10 +00:00
VTableBuilder.c
VTableBuilder.h
WeakRef.cpp Bug 1207696 Part 4b - Make recording optional in mozilla mutexes and monitors, r=froydnj. 2018-07-21 14:22:54 +00:00
WeakRef.h
moz.build Bug 1090497 - Re-enable warnings as errors on clang-cl. r=froydnj 2018-07-31 22:10:07 +09:00