Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1158)

Unified Diff: minidump/minidump_extensions.h

Issue 1311003003: Implement ModuleSnapshotWin::UUID (Closed) Base URL: https://chromium.googlesource.com/crashpad/crashpad@master
Patch Set: fixes Created 5 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « compat/non_win/dbghelp.h ('k') | minidump/minidump_extensions.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: minidump/minidump_extensions.h
diff --git a/minidump/minidump_extensions.h b/minidump/minidump_extensions.h
index b8bf77a1c4a77b75099f6401693736abd96629f6..95fdbddffe08333ef053167b23114676e0c1bcac 100644
--- a/minidump/minidump_extensions.h
+++ b/minidump/minidump_extensions.h
@@ -22,6 +22,7 @@
#include "base/compiler_specific.h"
#include "build/build_config.h"
+#include "util/misc/pdb_structures.h"
#include "util/misc/uuid.h"
// C4200 is "nonstandard extension used : zero-sized array in struct/union".
@@ -216,112 +217,6 @@ enum MinidumpOS : uint32_t {
kMinidumpOSUnknown = 0xffffffff,
};
-//! \brief A CodeView record linking to a `.pdb` 2.0 file.
-//!
-//! This format provides an indirect link to debugging data by referencing an
-//! external `.pdb` file by its name, timestamp, and age. This structure may be
-//! pointed to by MINIDUMP_MODULE::CvRecord. It has been superseded by
-//! MinidumpModuleCodeViewRecordPDB70.
-//!
-//! For more information about this structure and format, see <a
-//! href="http://www.debuginfo.com/articles/debuginfomatch.html#pdbfiles">Matching
-//! Debug Information</a>, PDB Files, and <a
-//! href="http://undocumented.rawol.com/sbs-w2k-1-windows-2000-debugging-support.pdf#page=63">Undocumented
-//! Windows 2000 Secrets</a>, Windows 2000 Debugging Support/Microsoft Symbol
-//! File Internals/CodeView Subsections.
-//!
-//! \sa IMAGE_DEBUG_MISC
-struct MinidumpModuleCodeViewRecordPDB20 {
- //! \brief The magic number identifying this structure version, stored in
- //! #signature.
- //!
- //! In a hex dump, this will appear as “NB10” when produced by a little-endian
- //! machine.
- static const uint32_t kSignature = '01BN';
-
- //! \brief The magic number identifying this structure version, the value of
- //! #kSignature.
- uint32_t signature;
-
- //! \brief The offset to CodeView data.
- //!
- //! In this structure, this field always has the value `0` because no CodeView
- //! data is present, there is only a link to CodeView data stored in an
- //! external file.
- uint32_t offset;
-
- //! \brief The time that the `.pdb` file was created, in `time_t` format, the
- //! number of seconds since the POSIX epoch.
- uint32_t timestamp;
-
- //! \brief The revision of the `.pdb` file.
- //!
- //! A `.pdb` file’s age indicates incremental changes to it. When a `.pdb`
- //! file is created, it has age `1`, and subsequent updates increase this
- //! value.
- uint32_t age;
-
- //! \brief The path or file name of the `.pdb` file associated with the
- //! module.
- //!
- //! This is a NUL-terminated string. On Windows, it will be encoded in the
- //! code page of the system that linked the module. On other operating
- //! systems, UTF-8 may be used.
- uint8_t pdb_name[1];
-};
-
-//! \brief A CodeView record linking to a `.pdb` 7.0 file.
-//!
-//! This format provides an indirect link to debugging data by referencing an
-//! external `.pdb` file by its name, %UUID, and age. This structure may be
-//! pointed to by MINIDUMP_MODULE::CvRecord.
-//!
-//! For more information about this structure and format, see <a
-//! href="http://www.debuginfo.com/articles/debuginfomatch.html#pdbfiles">Matching
-//! Debug Information</a>, PDB Files.
-//!
-//! \sa MinidumpModuleCodeViewRecordPDB20
-//! \sa IMAGE_DEBUG_MISC
-struct MinidumpModuleCodeViewRecordPDB70 {
- // UUID has a constructor, which makes it non-POD, which makes this structure
- // non-POD. In order for the default constructor to zero-initialize other
- // members, an explicit constructor must be provided.
- MinidumpModuleCodeViewRecordPDB70()
- : signature(),
- uuid(),
- age(),
- pdb_name() {
- }
-
- //! \brief The magic number identifying this structure version, stored in
- //! #signature.
- //!
- //! In a hex dump, this will appear as “RSDS” when produced by a little-endian
- //! machine.
- static const uint32_t kSignature = 'SDSR';
-
- //! \brief The magic number identifying this structure version, the value of
- //! #kSignature.
- uint32_t signature;
-
- //! \brief The `.pdb` file’s unique identifier.
- UUID uuid;
-
- //! \brief The revision of the `.pdb` file.
- //!
- //! A `.pdb` file’s age indicates incremental changes to it. When a `.pdb`
- //! file is created, it has age `1`, and subsequent updates increase this
- //! value.
- uint32_t age;
-
- //! \brief The path or file name of the `.pdb` file associated with the
- //! module.
- //!
- //! This is a NUL-terminated string. On Windows, it will be encoded in the
- //! code page of the system that linked the module. On other operating
- //! systems, UTF-8 may be used.
- uint8_t pdb_name[1];
-};
//! \brief A list of ::RVA pointers.
struct ALIGNAS(4) PACKED MinidumpRVAList {
« no previous file with comments | « compat/non_win/dbghelp.h ('k') | minidump/minidump_extensions.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698