Debug Mode Firefox 1.5

From CDOT Wiki
Jump to: navigation, search

Run Firefox 1.5 in Debug mode

Written By Yi Shen.

Introduction

I previously wrote how to build Firefox in Windows, and here I was work on how to run Firefox 1.5 in debug mode by Visual Studio 2003 debuger and better understand how certain things work.

Required

  1. Firefox 1.5 already build on Windows
  2. Microsoft Visual Studio 2003 installed

Instructions

First we need open the Firefox project in Visual Studio:

File>Open>Project...

This will start the Open Project Dialog and you should navigate to your firefox.exe directory, for me it is:

C:\proj\mozilla\hopefullyWorked.firefox.optimized\dist\bin

Yshen6 openProject.JPG


Visual Studio will create a Solution File (.sln) in the same directory as firefox.exe and give you the Solution Explorer


Yshen6 projectSolution.JPG


Now we are ready to set a breakpoint in a source file so we can stop Firefox and inspect it running at the appropriate point. Open a source file

File > Open > File...

To find the file that related to your project you need search the keyword at http://lxr.mozilla.org. First you need specify which version of Firefox your working on then do a search for the keyword, for example for our project "Canvas" which Rendering 2D/3D Object on the screen.


Yshen6 searchCanvas.JPG


There are hundreds of lines that in different files related to Canvas, then we need read some commons or go in to code to specify which file we need, for our project is: nsCanvasRenderingContext2D.cpp, then we need go back to our source files and open it:

C:\proj\mozilla\content\canvas\src\nsCanvasRenderingContext2D.cpp

Then locate a line for your breakpoint and click to the left of the line number in the gray selection border then it set a red circle:


Yshen6 openFile.JPG


Now we can run Firefox from Visual Studio by pressing F5 or by clicking Debug > Start Debugging, This will require you to save firefox.sln file, save it within the firefox.exe directory:


Yshen6 saveFile.JPG:


Then Visual Studio will run a console window with lots of messages related to debugging within the code. We will end up at the location of the breakpoint(if it is called during the compiling).


Yshen6 debugConsole.JPG


Now we have Firefox in debug mode. We can navigate to the code that building Canvus Objects by setting up breakpoints in the file.

Conclusion

To run Firefox in debug mode by Visual Studio does not take very long time and it is not as hard as build it in Windows, but it require you know where to find the project file and find the file that related to your project.