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 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
52 //! \brief Initializes the object. | 52 //! \brief Initializes the object. |
53 //! | 53 //! |
54 //! \param[in] process The handle to create a snapshot from. | 54 //! \param[in] process The handle to create a snapshot from. |
55 //! | 55 //! |
56 //! \return `true` if the snapshot could be created, `false` otherwise with | 56 //! \return `true` if the snapshot could be created, `false` otherwise with |
57 //! an appropriate message logged. | 57 //! an appropriate message logged. |
58 bool Initialize(HANDLE process); | 58 bool Initialize(HANDLE process); |
59 | 59 |
60 //! \brief Initializes the object's exception. | 60 //! \brief Initializes the object's exception. |
61 //! | 61 //! |
62 //! This populates the data to be returned by Exception(). The parameters may | 62 //! This populates the data to be returned by Exception(). |
63 //! be passed directly through from a Windows exception handler. | |
64 //! | 63 //! |
65 //! This method must not be called until after a successful call to | 64 //! This method must not be called until after a successful call to |
66 //! Initialize(). | 65 //! Initialize(). |
67 //! | 66 //! |
| 67 //! \param[in] exception_information_address The address in the client |
| 68 //! process's address space of an ExceptionInformation structure. |
| 69 //! |
68 //! \return `true` if the exception information could be initialized, `false` | 70 //! \return `true` if the exception information could be initialized, `false` |
69 //! otherwise with an appropriate message logged. When this method returns | 71 //! otherwise with an appropriate message logged. When this method returns |
70 //! `false`, the ProcessSnapshotWin object's validity remains unchanged. | 72 //! `false`, the ProcessSnapshotWin object's validity remains unchanged. |
71 bool InitializeException(DWORD thread_id, | 73 bool InitializeException(WinVMAddress exception_information_address); |
72 WinVMAddress exception_pointers); | |
73 | 74 |
74 //! \brief Sets the value to be returned by ReportID(). | 75 //! \brief Sets the value to be returned by ReportID(). |
75 //! | 76 //! |
76 //! The crash report ID is under the control of the snapshot producer, which | 77 //! The crash report ID is under the control of the snapshot producer, which |
77 //! may call this method to set the report ID. If this is not done, ReportID() | 78 //! may call this method to set the report ID. If this is not done, ReportID() |
78 //! will return an identifier consisting entirely of zeroes. | 79 //! will return an identifier consisting entirely of zeroes. |
79 void SetReportID(const UUID& report_id) { report_id_ = report_id; } | 80 void SetReportID(const UUID& report_id) { report_id_ = report_id; } |
80 | 81 |
81 //! \brief Sets the value to be returned by ClientID(). | 82 //! \brief Sets the value to be returned by ClientID(). |
82 //! | 83 //! |
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
136 std::map<std::string, std::string> annotations_simple_map_; | 137 std::map<std::string, std::string> annotations_simple_map_; |
137 timeval snapshot_time_; | 138 timeval snapshot_time_; |
138 InitializationStateDcheck initialized_; | 139 InitializationStateDcheck initialized_; |
139 | 140 |
140 DISALLOW_COPY_AND_ASSIGN(ProcessSnapshotWin); | 141 DISALLOW_COPY_AND_ASSIGN(ProcessSnapshotWin); |
141 }; | 142 }; |
142 | 143 |
143 } // namespace crashpad | 144 } // namespace crashpad |
144 | 145 |
145 #endif // CRASHPAD_SNAPSHOT_WIN_PROCESS_SNAPSHOT_WIN_H_ | 146 #endif // CRASHPAD_SNAPSHOT_WIN_PROCESS_SNAPSHOT_WIN_H_ |
OLD | NEW |