OLD | NEW |
1 // Copyright 2015 The Crashpad Authors. All rights reserved. | 1 // Copyright 2015 The Crashpad Authors. All rights reserved. |
2 // | 2 // |
3 // Licensed under the Apache License, Version 2.0 (the "License"); | 3 // Licensed under the Apache License, Version 2.0 (the "License"); |
4 // you may not use this file except in compliance with the License. | 4 // you may not use this file except in compliance with the License. |
5 // You may obtain a copy of the License at | 5 // You may obtain a copy of the License at |
6 // | 6 // |
7 // http://www.apache.org/licenses/LICENSE-2.0 | 7 // http://www.apache.org/licenses/LICENSE-2.0 |
8 // | 8 // |
9 // Unless required by applicable law or agreed to in writing, software | 9 // Unless required by applicable law or agreed to in writing, software |
10 // distributed under the License is distributed on an "AS IS" BASIS, | 10 // distributed under the License is distributed on an "AS IS" BASIS, |
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
81 | 81 |
82 kern_return_t CrashReportExceptionHandler::CatchMachException( | 82 kern_return_t CrashReportExceptionHandler::CatchMachException( |
83 exception_behavior_t behavior, | 83 exception_behavior_t behavior, |
84 exception_handler_t exception_port, | 84 exception_handler_t exception_port, |
85 thread_t thread, | 85 thread_t thread, |
86 task_t task, | 86 task_t task, |
87 exception_type_t exception, | 87 exception_type_t exception, |
88 const mach_exception_data_type_t* code, | 88 const mach_exception_data_type_t* code, |
89 mach_msg_type_number_t code_count, | 89 mach_msg_type_number_t code_count, |
90 thread_state_flavor_t* flavor, | 90 thread_state_flavor_t* flavor, |
91 const natural_t* old_state, | 91 ConstThreadState old_state, |
92 mach_msg_type_number_t old_state_count, | 92 mach_msg_type_number_t old_state_count, |
93 thread_state_t new_state, | 93 thread_state_t new_state, |
94 mach_msg_type_number_t* new_state_count, | 94 mach_msg_type_number_t* new_state_count, |
95 const mach_msg_trailer_t* trailer, | 95 const mach_msg_trailer_t* trailer, |
96 bool* destroy_complex_request) { | 96 bool* destroy_complex_request) { |
97 *destroy_complex_request = true; | 97 *destroy_complex_request = true; |
98 | 98 |
99 // The expected behavior is EXCEPTION_STATE_IDENTITY | MACH_EXCEPTION_CODES, | 99 // The expected behavior is EXCEPTION_STATE_IDENTITY | MACH_EXCEPTION_CODES, |
100 // but it’s possible to deal with any exception behavior as long as it | 100 // but it’s possible to deal with any exception behavior as long as it |
101 // carries identity information (valid thread and task ports). | 101 // carries identity information (valid thread and task ports). |
(...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
255 | 255 |
256 if (!forwarded) { | 256 if (!forwarded) { |
257 ExcServerCopyState( | 257 ExcServerCopyState( |
258 behavior, old_state, old_state_count, new_state, new_state_count); | 258 behavior, old_state, old_state_count, new_state, new_state_count); |
259 } | 259 } |
260 | 260 |
261 return ExcServerSuccessfulReturnValue(behavior, false); | 261 return ExcServerSuccessfulReturnValue(behavior, false); |
262 } | 262 } |
263 | 263 |
264 } // namespace crashpad | 264 } // namespace crashpad |
OLD | NEW |