aboutsummaryrefslogtreecommitdiff
path: root/ctr-std/src/sys/windows/stack_overflow.rs
diff options
context:
space:
mode:
authorVivian Lim <[email protected]>2021-02-06 22:11:59 -0800
committerVivian Lim <[email protected]>2021-02-06 22:11:59 -0800
commit64423f0e34cc4a7d78c15b345b3b8f58243d8286 (patch)
treecc20e2e7f0fc35abf470e20e61d3d48f0d954f3b /ctr-std/src/sys/windows/stack_overflow.rs
parentSupport libctru 2.0 (diff)
downloadctru-rs-64423f0e34cc4a7d78c15b345b3b8f58243d8286.tar.xz
ctru-rs-64423f0e34cc4a7d78c15b345b3b8f58243d8286.zip
Delete ctr-std to use my fork of the rust repo instead
Diffstat (limited to 'ctr-std/src/sys/windows/stack_overflow.rs')
-rw-r--r--ctr-std/src/sys/windows/stack_overflow.rs52
1 files changed, 0 insertions, 52 deletions
diff --git a/ctr-std/src/sys/windows/stack_overflow.rs b/ctr-std/src/sys/windows/stack_overflow.rs
deleted file mode 100644
index 4a406d7..0000000
--- a/ctr-std/src/sys/windows/stack_overflow.rs
+++ /dev/null
@@ -1,52 +0,0 @@
-// Copyright 2014 The Rust Project Developers. See the COPYRIGHT
-// file at the top-level directory of this distribution and at
-// http://rust-lang.org/COPYRIGHT.
-//
-// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
-// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
-// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
-// option. This file may not be copied, modified, or distributed
-// except according to those terms.
-
-#![cfg_attr(test, allow(dead_code))]
-
-use sys_common::util::report_overflow;
-use sys::c;
-
-pub struct Handler;
-
-impl Handler {
- pub unsafe fn new() -> Handler {
- // This API isn't available on XP, so don't panic in that case and just
- // pray it works out ok.
- if c::SetThreadStackGuarantee(&mut 0x5000) == 0 {
- if c::GetLastError() as u32 != c::ERROR_CALL_NOT_IMPLEMENTED as u32 {
- panic!("failed to reserve stack space for exception handling");
- }
- }
- Handler
- }
-}
-
-extern "system" fn vectored_handler(ExceptionInfo: *mut c::EXCEPTION_POINTERS)
- -> c::LONG {
- unsafe {
- let rec = &(*(*ExceptionInfo).ExceptionRecord);
- let code = rec.ExceptionCode;
-
- if code == c::EXCEPTION_STACK_OVERFLOW {
- report_overflow();
- }
- c::EXCEPTION_CONTINUE_SEARCH
- }
-}
-
-pub unsafe fn init() {
- if c::AddVectoredExceptionHandler(0, vectored_handler).is_null() {
- panic!("failed to install exception handler");
- }
- // Set the thread stack guarantee for the main thread.
- let _h = Handler::new();
-}
-
-pub unsafe fn cleanup() {}