use execvp() correctly (suggested by wwp; thanks!)
authorAlfons Hoogervorst <alfons@proteus.demon.nl>
Fri, 16 Aug 2002 18:42:45 +0000 (18:42 +0000)
committerAlfons Hoogervorst <alfons@proteus.demon.nl>
Fri, 16 Aug 2002 18:42:45 +0000 (18:42 +0000)
ChangeLog.claws
configure.in
src/crash.c

index 40e9fdb86d9ffe7773dc635ec044474462a333df..edb81bc76943679111f5691f988e5eadb75449f6 100644 (file)
@@ -1,3 +1,8 @@
+2002-08-16 [alfons]    0.8.1claws70
+
+       * src/crash.c
+               use execvp() correctly (suggested by wwp; thanks!)
+
 2002-08-16 [alfons]    0.8.1claws69
 
        * src/gtksctree.c
 2002-08-16 [alfons]    0.8.1claws69
 
        * src/gtksctree.c
index 46adafa511986e24ab33142a1071e2d1d37791f2..306ebf4168b405b67a4544056382172de437eb17 100644 (file)
@@ -8,7 +8,7 @@ MINOR_VERSION=8
 MICRO_VERSION=1
 INTERFACE_AGE=0
 BINARY_AGE=0
 MICRO_VERSION=1
 INTERFACE_AGE=0
 BINARY_AGE=0
-EXTRA_VERSION=claws69
+EXTRA_VERSION=claws70
 VERSION=$MAJOR_VERSION.$MINOR_VERSION.$MICRO_VERSION$EXTRA_VERSION
 
 dnl set $target
 VERSION=$MAJOR_VERSION.$MINOR_VERSION.$MICRO_VERSION$EXTRA_VERSION
 
 dnl set $target
index 6c47c5f121eaa3f0821498907c085304448b463d..b0a72fc4d3fe8d4e0a05314c29252302d95c1455 100644 (file)
@@ -305,7 +305,7 @@ static void crash_debug(unsigned long crash_pid,
        pipe(choutput);
 
        if (0 == (pid = fork())) {
        pipe(choutput);
 
        if (0 == (pid = fork())) {
-               char *argp[9];
+               char *argp[10];
                char **argptr = argp;
                gchar *filespec = g_strconcat(get_rc_dir(), G_DIR_SEPARATOR_S, DEBUGGERRC, NULL);
 
                char **argptr = argp;
                gchar *filespec = g_strconcat(get_rc_dir(), G_DIR_SEPARATOR_S, DEBUGGERRC, NULL);
 
@@ -315,6 +315,7 @@ static void crash_debug(unsigned long crash_pid,
                /*
                 * setup debugger to attach to crashed sylpheed
                 */
                /*
                 * setup debugger to attach to crashed sylpheed
                 */
+               *argptr++ = "gdb"; 
                *argptr++ = "--nw";
                *argptr++ = "--nx";
                *argptr++ = "--quiet";
                *argptr++ = "--nw";
                *argptr++ = "--nx";
                *argptr++ = "--quiet";
@@ -490,18 +491,19 @@ static void crash_handler(int sig)
 
        if (0 == (pid = fork())) {
                char buf[50];
 
        if (0 == (pid = fork())) {
                char buf[50];
-               char *args[4];
+               char *args[5];
        
                /*
                 * probably also some other parameters (like GTK+ ones).
                 * also we pass the full startup dir and the real command
                 * line typed in (argv0)
                 */
        
                /*
                 * probably also some other parameters (like GTK+ ones).
                 * also we pass the full startup dir and the real command
                 * line typed in (argv0)
                 */
-               args[0] = "--debug";
-               args[1] = "--crash";
+               args[0] = argv0; 
+               args[1] = "--debug";
+               args[2] = "--crash";
                sprintf(buf, "%ld,%d,%s", getppid(), sig, argv0);
                sprintf(buf, "%ld,%d,%s", getppid(), sig, argv0);
-               args[2] = buf;
-               args[3] = NULL;
+               args[3] = buf;
+               args[4] = NULL;
 
                chdir(startup_dir);
                setgid(getgid());
 
                chdir(startup_dir);
                setgid(getgid());