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 135 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
146 &first_record)) { | 146 &first_record)) { |
147 LOG(ERROR) << "ExceptionRecord"; | 147 LOG(ERROR) << "ExceptionRecord"; |
148 return false; | 148 return false; |
149 } | 149 } |
150 exception_code_ = first_record.ExceptionCode; | 150 exception_code_ = first_record.ExceptionCode; |
151 exception_flags_ = first_record.ExceptionFlags; | 151 exception_flags_ = first_record.ExceptionFlags; |
152 exception_address_ = first_record.ExceptionAddress; | 152 exception_address_ = first_record.ExceptionAddress; |
153 for (DWORD i = 0; i < first_record.NumberParameters; ++i) | 153 for (DWORD i = 0; i < first_record.NumberParameters; ++i) |
154 codes_.push_back(first_record.ExceptionInformation[i]); | 154 codes_.push_back(first_record.ExceptionInformation[i]); |
155 if (first_record.ExceptionRecord) { | 155 if (first_record.ExceptionRecord) { |
156 // https://code.google.com/p/crashpad/issues/detail?id=43 | 156 // https://crashpad.chromium.org/bug/43 |
157 LOG(WARNING) << "dropping chained ExceptionRecord"; | 157 LOG(WARNING) << "dropping chained ExceptionRecord"; |
158 } | 158 } |
159 | 159 |
160 if (!process_reader.ReadMemory( | 160 if (!process_reader.ReadMemory( |
161 static_cast<WinVMAddress>(exception_pointers.ContextRecord), | 161 static_cast<WinVMAddress>(exception_pointers.ContextRecord), |
162 sizeof(*context_record), | 162 sizeof(*context_record), |
163 context_record)) { | 163 context_record)) { |
164 LOG(ERROR) << "ContextRecord"; | 164 LOG(ERROR) << "ContextRecord"; |
165 return false; | 165 return false; |
166 } | 166 } |
167 | 167 |
168 return true; | 168 return true; |
169 } | 169 } |
170 | 170 |
171 } // namespace internal | 171 } // namespace internal |
172 } // namespace crashpad | 172 } // namespace crashpad |
OLD | NEW |