1 From: Ginn Chen <ginn.chen@sun.com> |
|
2 Subject: Firefox 3.5 broken startup notification |
|
3 References: |
|
4 https://bugzilla.mozilla.org/show_bug.cgi?id=534845 |
|
5 |
|
6 diff --git a/toolkit/xre/nsAppRunner.cpp b/toolkit/xre/nsAppRunner.cpp |
|
7 --- a/toolkit/xre/nsAppRunner.cpp |
|
8 +++ b/toolkit/xre/nsAppRunner.cpp |
|
9 @@ -3556,30 +3556,23 @@ XRE_main(int argc, char* argv[], const n |
|
10 #ifdef XP_MACOSX |
|
11 if (gBinaryPath) { |
|
12 static char kEnvVar[MAXPATHLEN]; |
|
13 sprintf(kEnvVar, "XRE_BINARY_PATH=%s", gBinaryPath); |
|
14 PR_SetEnv(kEnvVar); |
|
15 } |
|
16 #endif |
|
17 |
|
18 -// XXXkt s/MOZ_TOOLKIT_GTK2/MOZ_WIDGET_GTK2/? |
|
19 -// but the hidden window has been destroyed so toolkit is NULL anyway. |
|
20 -#if defined(HAVE_DESKTOP_STARTUP_ID) && defined(MOZ_TOOLKIT_GTK2) |
|
21 - nsGTKToolkit* toolkit = GetGTKToolkit(); |
|
22 - if (toolkit) { |
|
23 - nsCAutoString currentDesktopStartupID; |
|
24 - toolkit->GetDesktopStartupID(¤tDesktopStartupID); |
|
25 - if (!currentDesktopStartupID.IsEmpty()) { |
|
26 - nsCAutoString desktopStartupEnv; |
|
27 - desktopStartupEnv.AssignLiteral("DESKTOP_STARTUP_ID="); |
|
28 - desktopStartupEnv.Append(currentDesktopStartupID); |
|
29 - // Leak it with extreme prejudice! |
|
30 - PR_SetEnv(ToNewCString(desktopStartupEnv)); |
|
31 - } |
|
32 +#if defined(HAVE_DESKTOP_STARTUP_ID) && defined(MOZ_WIDGET_GTK2) |
|
33 + if (!desktopStartupID.IsEmpty()) { |
|
34 + nsCAutoString desktopStartupEnv; |
|
35 + desktopStartupEnv.AssignLiteral("DESKTOP_STARTUP_ID="); |
|
36 + desktopStartupEnv.Append(desktopStartupID); |
|
37 + // Leak it with extreme prejudice! |
|
38 + PR_SetEnv(ToNewCString(desktopStartupEnv)); |
|
39 } |
|
40 #endif |
|
41 |
|
42 #ifdef MOZ_WIDGET_GTK2 |
|
43 MOZ_gdk_display_close(display); |
|
44 #endif |
|
45 |
|
46 rv = LaunchChild(nativeApp, appInitiatedRestart); |
|