diff --git a/ipc/glue/CrashReporterHost.cpp b/ipc/glue/CrashReporterHost.cpp index 9fee9187a69e..6afb9216e92a 100644 --- a/ipc/glue/CrashReporterHost.cpp +++ b/ipc/glue/CrashReporterHost.cpp @@ -25,7 +25,7 @@ CrashReporterHost::CrashReporterHost(GeckoProcessType aProcessType, mFinalized(false) {} bool CrashReporterHost::GenerateCrashReport(base::ProcessId aPid) { - if (!TakeCrashedChildMinidump(aPid, nullptr)) { + if (!TakeCrashedChildMinidump(aPid)) { return false; } @@ -35,13 +35,13 @@ bool CrashReporterHost::GenerateCrashReport(base::ProcessId aPid) { } RefPtr CrashReporterHost::TakeCrashedChildMinidump( - base::ProcessId aPid, uint32_t* aOutSequence) { + base::ProcessId aPid) { CrashReporter::AnnotationTable annotations; MOZ_ASSERT(!HasMinidump()); RefPtr crashDump; if (!CrashReporter::TakeMinidumpForChild(aPid, getter_AddRefs(crashDump), - annotations, aOutSequence)) { + annotations)) { return nullptr; } if (!AdoptMinidump(crashDump, annotations)) { diff --git a/ipc/glue/CrashReporterHost.h b/ipc/glue/CrashReporterHost.h index ed6fcb801f68..22900453603b 100644 --- a/ipc/glue/CrashReporterHost.h +++ b/ipc/glue/CrashReporterHost.h @@ -38,8 +38,7 @@ class CrashReporterHost { // Given an existing minidump for a crashed child process, take ownership of // it from IPDL. After this, FinalizeCrashReport may be called. - RefPtr TakeCrashedChildMinidump(base::ProcessId aPid, - uint32_t* aOutSequence); + RefPtr TakeCrashedChildMinidump(base::ProcessId aPid); // Replace the stored minidump with a new one. After this, // FinalizeCrashReport may be called. diff --git a/toolkit/crashreporter/nsDummyExceptionHandler.cpp b/toolkit/crashreporter/nsDummyExceptionHandler.cpp index 31aba8c4550a..fb7a6005c8a0 100644 --- a/toolkit/crashreporter/nsDummyExceptionHandler.cpp +++ b/toolkit/crashreporter/nsDummyExceptionHandler.cpp @@ -222,7 +222,7 @@ bool CreateNotificationPipeForChild(int* childCrashFd, int* childCrashRemapFd) { bool SetRemoteExceptionHandler(const char* aCrashPipe) { return false; } bool TakeMinidumpForChild(uint32_t childPid, nsIFile** dump, - AnnotationTable& aAnnotations, uint32_t* aSequence) { + AnnotationTable& aAnnotations) { return false; } diff --git a/toolkit/crashreporter/nsExceptionHandler.cpp b/toolkit/crashreporter/nsExceptionHandler.cpp index 8a36fa9341b2..047c915f5b0d 100644 --- a/toolkit/crashreporter/nsExceptionHandler.cpp +++ b/toolkit/crashreporter/nsExceptionHandler.cpp @@ -288,18 +288,14 @@ static FileHandle gMagicChildCrashReportFd = static Mutex* dumpMapLock; struct ChildProcessData : public nsUint32HashKey { explicit ChildProcessData(KeyTypePointer aKey) - : nsUint32HashKey(aKey), sequence(0), annotations(nullptr) {} + : nsUint32HashKey(aKey), annotations(nullptr) {} nsCOMPtr minidump; - // Each crashing process is assigned an increasing sequence number to - // indicate which process crashed first. - uint32_t sequence; UniquePtr annotations; }; typedef nsTHashtable ChildMinidumpMap; static ChildMinidumpMap* pidToMinidump; -static uint32_t crashSequence; static bool OOPInitialized(); void RecordMainThreadId() { @@ -3364,7 +3360,6 @@ static void OnChildProcessDumpRequested( ChildProcessData* pd = pidToMinidump->PutEntry(pid); MOZ_ASSERT(!pd->minidump); pd->minidump = minidump; - pd->sequence = ++crashSequence; pd->annotations = MakeUnique(); AnnotationTable& annotations = *(pd->annotations); AddSharedAnnotations(annotations); @@ -3582,7 +3577,7 @@ void GetAnnotation(uint32_t childPid, Annotation annotation, } bool TakeMinidumpForChild(uint32_t childPid, nsIFile** dump, - AnnotationTable& aAnnotations, uint32_t* aSequence) { + AnnotationTable& aAnnotations) { if (!GetEnabled()) return false; MutexAutoLock lock(*dumpMapLock); @@ -3593,10 +3588,6 @@ bool TakeMinidumpForChild(uint32_t childPid, nsIFile** dump, NS_IF_ADDREF(*dump = pd->minidump); aAnnotations = *(pd->annotations); - if (aSequence) { - *aSequence = pd->sequence; - } - pidToMinidump->RemoveEntry(pd); return !!*dump; @@ -3637,7 +3628,7 @@ bool FinalizeOrphanedMinidump(uint32_t aChildPid, GeckoProcessType aType, # pragma section("mozwerpt", read, executable, shared) __declspec(allocate("mozwerpt")) MOZ_EXPORT DWORD WINAPI - WerNotifyProc(LPVOID aParameter) { +WerNotifyProc(LPVOID aParameter) { const WindowsErrorReportingData* werData = static_cast(aParameter); @@ -3668,7 +3659,6 @@ __declspec(allocate("mozwerpt")) MOZ_EXPORT DWORD WINAPI ChildProcessData* pd = pidToMinidump->PutEntry(pid); MOZ_ASSERT(!pd->minidump); pd->minidump = minidump; - pd->sequence = ++crashSequence; pd->annotations = MakeUnique(); (*pd->annotations)[Annotation::WindowsErrorReporting] = "1"_ns; AddSharedAnnotations(*(pd->annotations)); diff --git a/toolkit/crashreporter/nsExceptionHandler.h b/toolkit/crashreporter/nsExceptionHandler.h index 553de4b27c06..7a6bae5ac668 100644 --- a/toolkit/crashreporter/nsExceptionHandler.h +++ b/toolkit/crashreporter/nsExceptionHandler.h @@ -209,11 +209,9 @@ void OOPInit(); // Return true if a dump was found for |childPid|, and return the // path in |dump|. The caller owns the last reference to |dump| if it // is non-nullptr. The annotations for the crash will be stored in -// |aAnnotations|. The sequence parameter will be filled with an ordinal -// indicating which remote process crashed first. +// |aAnnotations|. bool TakeMinidumpForChild(uint32_t childPid, nsIFile** dump, - AnnotationTable& aAnnotations, - uint32_t* aSequence = nullptr); + AnnotationTable& aAnnotations); /** * If a dump was found for |childPid| then write a minimal .extra file to