fix patch (as upstream in FF16) firefox14
authorWolfgang Rosenauer <wr@rosenauer.org>
Wed, 20 Jun 2012 21:05:17 +0200
branchfirefox14
changeset 486 83ef9ecabaeb
parent 485 cfd3bf2f4796
child 487 6cb2adf27cf2
fix patch (as upstream in FF16)
mozilla-crashreporter-restart-args.patch
--- a/mozilla-crashreporter-restart-args.patch	Wed Jun 20 21:02:34 2012 +0200
+++ b/mozilla-crashreporter-restart-args.patch	Wed Jun 20 21:05:17 2012 +0200
@@ -1,16 +1,21 @@
 # HG changeset patch
 # User Wolfgang Rosenauer <wr@rosenauer.org>
-# Parent 2cea34f21fbbd778c9643f4453c8438719c27444
-Bug 762780 - crashreporter fails to restart Firefox
+# Parent 0373328cfcb6ad3995f53598e974d61252ddebf4
+Bug 762780 - crashreporter restart command should support MOZ_APP_LAUNCHER
 
 diff --git a/toolkit/crashreporter/nsExceptionHandler.cpp b/toolkit/crashreporter/nsExceptionHandler.cpp
 --- a/toolkit/crashreporter/nsExceptionHandler.cpp
 +++ b/toolkit/crashreporter/nsExceptionHandler.cpp
-@@ -1364,29 +1364,22 @@ SetRestartArgs(int argc, char** argv)
+@@ -1353,32 +1353,25 @@ nsresult
+ SetRestartArgs(int argc, char** argv)
+ {
+   if (!gExceptionHandler)
+     return NS_OK;
  
    int i;
    nsCAutoString envVar;
    char *env;
++  char *argv1 = getenv("MOZ_APP_LAUNCHER");
    for (i = 0; i < argc; i++) {
      envVar = "MOZ_CRASHREPORTER_RESTART_ARG_";
      envVar.AppendInt(i);
@@ -27,12 +32,11 @@
 -    } else
 -#endif
 -    {
-+    // Is there a request to suppress default binary launcher?
-+    char* argv1 = getenv("MOZ_APP_LAUNCHER");
-+    if(!argv1) {
++    if (argv1 && i == 0) {
++      // Is there a request to suppress default binary launcher?
++      envVar += argv1;
++    } else {
        envVar += argv[i];
-+    } else {
-+      envVar += argv1;
      }
  
      // PR_SetEnv() wants the string to be available for the lifetime
@@ -40,4 +44,3 @@
      env = ToNewCString(envVar);
      if (!env)
        return NS_ERROR_OUT_OF_MEMORY;
-