Merge branch 'ma/sequencer-do-reset-saner-loop-termination'
[gitweb.git] / compat / winansi.c
index a11a0f16d276470381587236ae513994d92af477..f4f08237f9ed513e0dd3b3bfd9494f19944e3239 100644 (file)
@@ -474,6 +474,18 @@ static void die_lasterr(const char *fmt, ...)
        va_end(params);
 }
 
+#undef dup2
+int winansi_dup2(int oldfd, int newfd)
+{
+       int ret = dup2(oldfd, newfd);
+
+       if (!ret && newfd >= 0 && newfd <= 2)
+               fd_is_interactive[newfd] = oldfd < 0 || oldfd > 2 ?
+                       0 : fd_is_interactive[oldfd];
+
+       return ret;
+}
+
 static HANDLE duplicate_handle(HANDLE hnd)
 {
        HANDLE hresult, hproc = GetCurrentProcess();