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

13 Коммитов

Автор SHA1 Сообщение Дата
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
Narcis Beleuzu b18d13eb15 Backed out changeset be8383028bc0 (bug 1508468) for windows build bustage
--HG--
extra : rebase_source : b86532be5abaafa05a3b96a99bff5eccecbb3b20
2018-11-21 01:30:52 +02:00
Aaron Klotz 6be5837934 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 22:12:53 +00:00
Brindusan Cristian 26aca84b41 Backed out changeset 0ff2e89a1819 (bug 1508468) for windows build bustages on ntstatus.h. CLOSED TREE 2018-11-20 23:08:11 +02:00
Aaron Klotz 5bc6718181 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 20:27:06 +00:00
Narcis Beleuzu 6d1ee7c9fd Backed out changeset 5660a1cd0e25 (bug 1508468) for Windows MinGW bustages. CLOSED TREE 2018-11-20 21:39:10 +02:00
Aaron Klotz 4ea282427e 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 18:06:23 +00:00
Aaron Klotz 52f2033824 Bug 1277075: Add MainThreadRuntime class to mscom glue, enabling safe initialization of COM security and exception handlers; r=jimm
MozReview-Commit-ID: 9Ig9wb4KVps

--HG--
extra : rebase_source : 6a8da83dbdae9b7407598997ffbe56eeca3a4d26
2016-07-20 11:10:46 -06:00
Iris Hsiao 7e0c7b0fbf Backed out changeset 88e5ef869df6 (bug 1277075) for assertion failures 2016-07-20 14:13:10 +08:00
Aaron Klotz 102b144717 Bug 1277075: Add MainThreadRuntime class to mscom glue, enabling safe initialization of COM security and exception handlers; r=jimm
MozReview-Commit-ID: 9Ig9wb4KVps

--HG--
extra : rebase_source : 23b5a577b19e40729476299049a0dc464ba6e4de
2016-07-14 16:54:53 -06:00
Iris Hsiao a024afd017 Backed out changeset 26fe03ac12be (bug 1277075) for Windows build bustage 2016-07-19 12:36:27 +08:00
Aaron Klotz 20b5649ee9 Bug 1277075: Add MainThreadRuntime class to mscom glue, enabling safe initialization of COM security and exception handlers; r=jimm
MozReview-Commit-ID: BKDnWQLCYGI

--HG--
extra : rebase_source : 091ed78a5b30c674ad8a7964b0ae5ffe66e905e5
2016-07-14 16:54:53 -06:00
Aaron Klotz 140fb74701 Bug 1287002: Add RAII class for entering a COM apartment; r=jimm
MozReview-Commit-ID: DEwU3vU1P5P

--HG--
extra : rebase_source : 05f2ce1b51e32e369965c189ead9071b05b6e498
2016-06-03 12:30:31 -06:00