* job.c (construct_command_argv_internal): Avoid extra backslash
authorEli Zaretskii <eliz@gnu.org>
Tue, 30 Sep 2008 11:19:58 +0000 (11:19 +0000)
committerEli Zaretskii <eliz@gnu.org>
Tue, 30 Sep 2008 11:19:58 +0000 (11:19 +0000)
in batch-mode Unixy shells.  Under DB_JOBS, display the contents
of the batch file.

ChangeLog
job.c

index b8194cf..b380147 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2008-09-30  David Russo  <d-russo@ti.com>  (tiny change)
+
+       * job.c (construct_command_argv_internal): Avoid extra backslash
+       in batch-mode Unixy shells.  Under DB_JOBS, display the contents
+       of the batch file.
+
 2008-05-31  Eli Zaretskii  <eliz@gnu.org>
 
        * README.W32.template: Remove obsolete text about non-support for
diff --git a/job.c b/job.c
index 82f7c0b..27999f8 100644 (file)
--- a/job.c
+++ b/job.c
@@ -2746,7 +2746,11 @@ construct_command_argv_internal (char *line, char **restp, char *shell,
            if (PRESERVE_BSNL)
              {
                *(ap++) = '\\';
-               *(ap++) = '\\';
+               /* Only non-batch execution needs another backslash,
+                  because it will be passed through a recursive
+                  invocation of this function.  */
+               if (!batch_mode_shell)
+                 *(ap++) = '\\';
                *(ap++) = '\n';
              }
            ++p;
@@ -2807,6 +2811,8 @@ construct_command_argv_internal (char *line, char **restp, char *shell,
       fputs (command_ptr, batch);
       fputc ('\n', batch);
       fclose (batch);
+      DB (DB_JOBS, (_("Batch file contents:%s\n\t%s\n"),
+                   !unixy_shell ? "\n\t@echo off" : "", command_ptr));
 
       /* create argv */
       new_argv = xmalloc(3 * sizeof (char *));