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 211 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
222 #else | 222 #else |
223 record.ExceptionAddress = reinterpret_cast<void*>(context.Eip); | 223 record.ExceptionAddress = reinterpret_cast<void*>(context.Eip); |
224 #endif // ARCH_CPU_64_BITS | 224 #endif // ARCH_CPU_64_BITS |
225 | 225 |
226 exception_pointers.ExceptionRecord = &record; | 226 exception_pointers.ExceptionRecord = &record; |
227 | 227 |
228 g_non_crash_exception_information.thread_id = GetCurrentThreadId(); | 228 g_non_crash_exception_information.thread_id = GetCurrentThreadId(); |
229 g_non_crash_exception_information.exception_pointers = | 229 g_non_crash_exception_information.exception_pointers = |
230 reinterpret_cast<crashpad::WinVMAddress>(&exception_pointers); | 230 reinterpret_cast<crashpad::WinVMAddress>(&exception_pointers); |
231 | 231 |
232 bool set_event_result = SetEvent(g_signal_non_crash_dump); | 232 bool set_event_result = !!SetEvent(g_signal_non_crash_dump); |
Mark Mentovai
2015/10/22 21:22:40
Ugly, but well, at least it’s not !!::.
| |
233 PLOG_IF(ERROR, !set_event_result) << "SetEvent"; | 233 PLOG_IF(ERROR, !set_event_result) << "SetEvent"; |
234 | 234 |
235 DWORD wfso_result = WaitForSingleObject(g_non_crash_dump_done, INFINITE); | 235 DWORD wfso_result = WaitForSingleObject(g_non_crash_dump_done, INFINITE); |
236 PLOG_IF(ERROR, wfso_result != WAIT_OBJECT_0) << "WaitForSingleObject"; | 236 PLOG_IF(ERROR, wfso_result != WAIT_OBJECT_0) << "WaitForSingleObject"; |
237 } | 237 } |
238 | 238 |
239 } // namespace crashpad | 239 } // namespace crashpad |
OLD | NEW |