azure-core
Loading...
Searching...
No Matches
global_exception.hpp
1// Copyright (c) Microsoft Corporation.
2// Licensed under the MIT License.
3
4#pragma once
5#include <exception>
6#include <iostream>
7
8namespace Azure { namespace Core { namespace Diagnostics { namespace _internal {
21 struct GlobalExceptionHandler
22 {
23 static void HandleSigAbort(int)
24 {
25 // Rethrow any exceptions on the current stack - this will cause any pending exceptions to
26 // be thrown so we can catch them and report them to the caller. This is needed because the
27 // terminate() function on Windows calls abort() which normally pops up a modal dialog box
28 // after which it terminates the application without reporting the exception.
29 try
30 {
31 throw;
32 }
33 catch (std::exception const& ex)
34 {
35 std::cerr << "SIGABRT raised, exception: " << ex.what() << std::endl;
36 }
37 }
38 };
39}}}} // namespace Azure::Core::Diagnostics::_internal
Compute the hash value for the input binary data, using SHA256, SHA384 and SHA512.
Definition azure_assert.hpp:57