[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Iceweasel/Firefox(Squeeze) debuggen [off-topic]



Hallo.

Vorweg: Da ich kein Programmierer bin und auch keine ernsteren oder langfristigeren Ambitionen hege (mich einfach nur mal spielerisch der Sache annehmen und schauen möchte wie weit ich komme), poste ich das mal hier statt in der mentor- oder developer-Liste.

Vielleicht hat ja jemand Lust sich auch mal exemplarisch ein bisschen durch den Code zu wühlen.

Also, es gibt (wohl nur unter KDE) folgenden nervigen Bug:

	http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=478309#54

Ich hab mal den gesamten Iceweasel-Code durchsucht nach der in diesem Menü vorkommenden Zeichenkette "Open Containing Folder" und komme also auf die folgende Zeile:

	http://mxr.mozilla.org/mozilla1.9.1/source/toolkit/locales/en-US/chrome/mozapps/downloads/downloads.dtd
	Zeile 18:
		<!ENTITY cmd.show.label "Open Containing Folder">

Wenn ich dann weiter nach cmd.show.label suche, komme ich hierhin:

	http://mxr.mozilla.org/mozilla1.9.1/source/toolkit/mozapps/downloads/content/downloads.xul
	Zeile 133f:
		label="&cmd.open.label;" accesskey="&cmd.open.accesskey;"
        	oncommand="performCommand('cmd_open');"

Das "cmd_open" findet sich wiederum hier:

	http://mxr.mozilla.org/mozilla1.9.1/source/toolkit/mozapps/downloads/content/downloads.js
	Zeile 786f:
		cmd_show: function(aSelectedItem) {
       		showDownload(aSelectedItem);

Und von dort kann man sich über "showDownload" weiterklicken und -suchen und landet schließlich hier:

	http://mxr.mozilla.org/mozilla1.9.1/source/xpcom/io/nsLocalFileUnix.cpp
	Zeile 1648ff:

Und hier glaub ich liegt der Hund begraben:

	#ifdef MOZ_WIDGET_GTK2 ... #else NS_ERROR_FAILURE;

Geh ich recht in der Annahme daß hier neben MOZ_WIDGET_GTK2 ein MOZ_WIDGET_KDE-Zweig fehlt (oder wie immer das heißen mag)?

Weiß jemand wie ich das zB mit "ddd" überprüfen kann? Ich weiß nicht wie ich mit dem Tool das nsLocalFileUnix.cpp anwählen und in der betreffenden Zeile einen Breakpoint setzen kann (im Dialog "Open Source ..." wird dieses cpp-File nicht angezeigt.

Jan.

PS: Ich arbeite mit einem per "apt-get source" und "dpkg-buildpackage" selbst kompilierten Iceweasel.
Reply to: