summaryrefslogtreecommitdiffstats
path: root/toolkit/crashreporter/test/dumputils.cpp
diff options
context:
space:
mode:
authorMatt A. Tobin <email@mattatobin.com>2019-04-01 13:55:00 -0400
committerMatt A. Tobin <email@mattatobin.com>2019-04-01 13:55:00 -0400
commitce3979c721ba378a448bfbe3671c99d993cbc801 (patch)
treee200d5225bcecef5f974b946a58277fddd24e89c /toolkit/crashreporter/test/dumputils.cpp
parentf6c16cff36048c583ca0e1d019b622336ca861a0 (diff)
parentff2f287f82630ab3887d7d5c1e64e5b888ea0beb (diff)
downloadUXP-ce3979c721ba378a448bfbe3671c99d993cbc801.tar
UXP-ce3979c721ba378a448bfbe3671c99d993cbc801.tar.gz
UXP-ce3979c721ba378a448bfbe3671c99d993cbc801.tar.lz
UXP-ce3979c721ba378a448bfbe3671c99d993cbc801.tar.xz
UXP-ce3979c721ba378a448bfbe3671c99d993cbc801.zip
Merge branch 'master' into Sync-weave
Diffstat (limited to 'toolkit/crashreporter/test/dumputils.cpp')
-rw-r--r--toolkit/crashreporter/test/dumputils.cpp99
1 files changed, 0 insertions, 99 deletions
diff --git a/toolkit/crashreporter/test/dumputils.cpp b/toolkit/crashreporter/test/dumputils.cpp
deleted file mode 100644
index 36ee3eedf..000000000
--- a/toolkit/crashreporter/test/dumputils.cpp
+++ /dev/null
@@ -1,99 +0,0 @@
-#include <stdio.h>
-
-#include "google_breakpad/processor/minidump.h"
-#include "nscore.h"
-
-using namespace google_breakpad;
-
-// Return true if the specified minidump contains a stream of |stream_type|.
-extern "C"
-NS_EXPORT bool
-DumpHasStream(const char* dump_file, uint32_t stream_type)
-{
- Minidump dump(dump_file);
- if (!dump.Read())
- return false;
-
- uint32_t length;
- if (!dump.SeekToStreamType(stream_type, &length) || length == 0)
- return false;
-
- return true;
-}
-
-// Return true if the specified minidump contains a memory region
-// that contains the instruction pointer from the exception record.
-extern "C"
-NS_EXPORT bool
-DumpHasInstructionPointerMemory(const char* dump_file)
-{
- Minidump minidump(dump_file);
- if (!minidump.Read())
- return false;
-
- MinidumpException* exception = minidump.GetException();
- MinidumpMemoryList* memory_list = minidump.GetMemoryList();
- if (!exception || !memory_list) {
- return false;
- }
-
- MinidumpContext* context = exception->GetContext();
- if (!context)
- return false;
-
- uint64_t instruction_pointer;
- if (!context->GetInstructionPointer(&instruction_pointer)) {
- return false;
- }
-
- MinidumpMemoryRegion* region =
- memory_list->GetMemoryRegionForAddress(instruction_pointer);
- return region != nullptr;
-}
-
-// This function tests for a very specific condition. It finds
-// an address in a file, "crash-addr", in the CWD. It checks
-// that the minidump has a memory region starting at that
-// address. The region must be 32 bytes long and contain the
-// values 0 to 31 as bytes, in ascending order.
-extern "C"
-NS_EXPORT bool
-DumpCheckMemory(const char* dump_file)
-{
- Minidump dump(dump_file);
- if (!dump.Read())
- return false;
-
- MinidumpMemoryList* memory_list = dump.GetMemoryList();
- if (!memory_list) {
- return false;
- }
-
- void *addr;
- FILE *fp = fopen("crash-addr", "r");
- if (!fp)
- return false;
- if (fscanf(fp, "%p", &addr) != 1) {
- fclose(fp);
- return false;
- }
- fclose(fp);
-
- remove("crash-addr");
-
- MinidumpMemoryRegion* region =
- memory_list->GetMemoryRegionForAddress(uint64_t(addr));
- if(!region)
- return false;
-
- const uint8_t* chars = region->GetMemory();
- if (region->GetSize() != 32)
- return false;
-
- for (int i=0; i<32; i++) {
- if (chars[i] != i)
- return false;
- }
-
- return true;
-}