How to capture a (crash) minidump

Post your tutorials for using Pale Moon or performing related tasks here.
Note: Not for "how do I...?" Questions!

Moderator: satrow

Forum rules
Tutorials and Howtos should only relate to Pale Moon, and not to third party applications. e.g.: Don't post a Howto for configuring your firewall.
If you have a question how to do something, you should use one of the support boards, not this board. It is meant for people to document and post instructions.
User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 21181
Joined: Sun, 28 Aug 2011, 17:27
Location: 58.5°N 15.5°E
Contact:

How to capture a (crash) minidump

Postby Moonchild » Sat, 10 Sep 2016, 09:08

If you find that Pale Moon crashes for you, but there is no direct cause to be seen and it can't easily be reproduced by others, then creating a small memory dump of the crash (a "minidump") will help the developers greatly because it can be used to find the exact point in the source code where the crash occurs, even if the crash can't be triggered on their own systems.

The following information is based on the (CC-BY-AT) Mozilla article for the same, found here at the time of writing:

Minidumps are files created by various Windows tools which record the complete state of a program as it's running, or as it was at the moment of a crash. Basic information about crashes can easily by collected by way of e.g. the AppCrashView tool, but sometimes that's not sufficient to diagnose a problem. Sometimes a more complete form of crash data like a minidump is needed to see additional details about a crash, in which case manual capture of a minidump is desired.

This page describes how to capture these minidumps on Windows.

Capturing the dump

To capture a full minidump for an application crash, you can use a tool called windbg.
  1. Download the Windows Debugging Tools and install the version version that matches your Pale Moon architecture. Even if you are on a 64-bit Windows, your Pale Moon might be a 32-bit one. To double-check, you can open Help → About in the browser, and look at the "Version" entry. If it includes the string "(64-bit)", then you need the 64-bit version of the tools, otherwise use the 32-bit version.
  2. Run WinDbg (Start → All Programs → Debugging Tools for Windows → WinDbg), and select File → Open. Choose the Pale Moon executable, called palemoon.exe, and usually found in "C:\Program Files\Pale Moon". (When running a 32-bit version on 64-bit versions of Windows, you may find it in "C:\Program Files (x86)\Pale Moon" instead.)
  3. From the menu, select Debug → Go, and Pale Moon should start. If the debugger spits out some text right away and Pale Moon doesn't come up, select Debug → Go again.
  4. When the program is about to crash, WinDbg will spit out more data, and the prompt at the bottom will change from saying "*BUSY*" to having a number in it. At this point, you should type:

    Code: Select all

    .dump /ma c:\mydumps\palemoon-crash.dmp

    (make sure it is an existing folder you have write access to. c:\mydumps is an example -- any writable location with sufficient free space should work)
    don't forget the dot at the beginning.
    Once it completes, which can take a fair while, you will have a very large file at c:\palemoon-crash.dmp that can be used to help debug your problem.

Sending the dump

A few important notes about the dump files:
  • These minidumps contain the complete contents of program memory. They are therefore very likely to contain private information, if there is any in the browser. For this reason, you may prefer to generate minidumps against a clean profile where possible.
  • Dump files are (very) large. It is important that you compress these files (e.g. using zip or 7-zip) before you send them over.

To send: You can use any file sharing service of your choice, like Dropbox, Yousendit, and similar.
Alternatively, you can upload to our FTP server directly:

Code: Select all

host: ftp.palemoon.org
user: dumps
password: crashdumps

Please note that this FTP account is write-only to prevent privacy issues and abuse. Meaning: you can send files to it and append data to existing files, but trying to download will not not work. Once more: compress your dump files before uploading, please.
Improving Mozilla code: You know you're on the right track with code changes when you spend the majority of your time deleting code.

"The wisest men follow their own direction." - Euripedes

Return to “Tutorials/Howtos”

Who is online

Users browsing this forum: No registered users and 3 guests