Update draft release notes to 1.8.2
[git.git] / run-command.c
index 12d4ddb552204ba010ac90f24429d81a74e78a4e..07e27ff4c829bf4e5dffbc61ac4f86f757e121c4 100644 (file)
@@ -274,6 +274,7 @@ int start_command(struct child_process *cmd)
        int need_in, need_out, need_err;
        int fdin[2], fdout[2], fderr[2];
        int failed_errno = failed_errno;
+       char *str;
 
        /*
         * In case of errors we must keep the promise to close FDs
@@ -286,6 +287,7 @@ int start_command(struct child_process *cmd)
                        failed_errno = errno;
                        if (cmd->out > 0)
                                close(cmd->out);
+                       str = "standard input";
                        goto fail_pipe;
                }
                cmd->in = fdin[1];
@@ -301,6 +303,7 @@ int start_command(struct child_process *cmd)
                                close_pair(fdin);
                        else if (cmd->in)
                                close(cmd->in);
+                       str = "standard output";
                        goto fail_pipe;
                }
                cmd->out = fdout[0];
@@ -318,9 +321,10 @@ int start_command(struct child_process *cmd)
                                close_pair(fdout);
                        else if (cmd->out)
                                close(cmd->out);
+                       str = "standard error";
 fail_pipe:
-                       error("cannot create pipe for %s: %s",
-                               cmd->argv[0], strerror(failed_errno));
+                       error("cannot create %s pipe for %s: %s",
+                               str, cmd->argv[0], strerror(failed_errno));
                        errno = failed_errno;
                        return -1;
                }