git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Steffen Prohaska <prohaska@zib.de>
To: Johannes Sixt <johannes.sixt@telecom.at>
Cc: git@vger.kernel.org, msysgit@googlegroups.com,
	Junio C Hamano <gitster@pobox.com>,
	Peter <git@peter.is-a-geek.org>,
	Steffen Prohaska <prohaska@zib.de>
Subject: [PATCH 10/12] Add ANSI control code emulation for the Windows console
Date: Wed,  2 Jul 2008 10:32:10 +0200	[thread overview]
Message-ID: <1214987532-23640-10-git-send-email-prohaska@zib.de> (raw)
In-Reply-To: <1214987532-23640-9-git-send-email-prohaska@zib.de>


From: Peter <git@peter.is-a-geek.org>

This adds only the minimum necessary to keep git pull/merge's diffstat from
wrapping. Notably absent is support for the K (erase) operation, and support
for POSIX write.

Cygwin does not need the WIN_ANSI define, since it has its own (more complete)
ANSI emulation.

Signed-off-by: Peter Harris <git@peter.is-a-geek.org>
Signed-off-by: Steffen Prohaska <prohaska@zib.de>
---
 Makefile          |    6 +
 compat/winansi.c  |  309 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 git-compat-util.h |    7 ++
 3 files changed, 322 insertions(+), 0 deletions(-)
 create mode 100644 compat/winansi.c

diff --git a/Makefile b/Makefile
index 5914e1a..a7f2dcb 100644
--- a/Makefile
+++ b/Makefile
@@ -737,6 +737,7 @@ ifneq (,$(findstring MINGW,$(uname_S)))
 	NO_SVN_TESTS = YesPlease
 	NO_PERL_MAKEMAKER = YesPlease
 	NO_POSIX_ONLY_PROGRAMS = YesPlease
+	WIN_ANSI = YesPlease
 	COMPAT_CFLAGS += -D__USE_MINGW_ACCESS -DNOGDI -Icompat
 	COMPAT_CFLAGS += -DSNPRINTF_SIZE_CORR=1
 	COMPAT_CFLAGS += -DSTRIP_EXTENSION=\".exe\"
@@ -981,6 +982,11 @@ ifdef NO_EXTERNAL_GREP
 	BASIC_CFLAGS += -DNO_EXTERNAL_GREP
 endif
 
+ifdef WIN_ANSI
+	COMPAT_CFLAGS += -DWIN_ANSI
+	COMPAT_OBJS += compat/winansi.o
+endif
+
 ifeq ($(TCLTK_PATH),)
 NO_TCLTK=NoThanks
 endif
diff --git a/compat/winansi.c b/compat/winansi.c
new file mode 100644
index 0000000..86c3fd2
--- /dev/null
+++ b/compat/winansi.c
@@ -0,0 +1,309 @@
+#include <windows.h>
+#include "../git-compat-util.h"
+
+/*
+ Functions to be wrapped:
+*/
+#undef printf
+#undef fputs
+
+/*
+ ANSI codes to implement: m, K
+*/
+
+static HANDLE console;
+static WORD plain_attr;
+static WORD attr;
+static int negative;
+
+static void init(void)
+{
+    CONSOLE_SCREEN_BUFFER_INFO sbi;
+
+    static int initialized = 0;
+    if (initialized)
+	return;
+
+    console = GetStdHandle(STD_OUTPUT_HANDLE);
+    if (console == INVALID_HANDLE_VALUE)
+	console = NULL;
+
+    if (!console)
+	return;
+
+    GetConsoleScreenBufferInfo(console, &sbi);
+    attr = plain_attr = sbi.wAttributes;
+    negative = 0;
+
+    initialized = 1;
+}
+
+
+#define FOREGROUND_ALL (FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE)
+#define BACKGROUND_ALL (BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_BLUE)
+
+static void set_console_attr(void)
+{
+    WORD attributes = attr;
+    if (negative) {
+	attributes &= ~FOREGROUND_ALL;
+	attributes &= ~BACKGROUND_ALL;
+
+	/* This could probably use a bitmask instead of a series of ifs */
+	if (attr & FOREGROUND_RED)
+	    attributes |= BACKGROUND_RED;
+	if (attr & FOREGROUND_GREEN)
+	    attributes |= BACKGROUND_GREEN;
+	if (attr & FOREGROUND_BLUE)
+	    attributes |= BACKGROUND_BLUE;
+
+	if (attr & BACKGROUND_RED)
+	    attributes |= FOREGROUND_RED;
+	if (attr & BACKGROUND_GREEN)
+	    attributes |= FOREGROUND_GREEN;
+	if (attr & BACKGROUND_BLUE)
+	    attributes |= FOREGROUND_BLUE;
+    }
+    SetConsoleTextAttribute(console, attributes);
+}
+
+static const char *set_attr(const char *str)
+{
+    const char *func;
+    size_t len = strspn(str, "0123456789;");
+    func = str + len;
+
+    switch (*func) {
+    case 'm':
+	do {
+	    long val = strtol(str, (char **)&str, 10);
+	    switch (val) {
+	    case 0: /* reset */
+		attr = plain_attr;
+		negative = 0;
+		break;
+	    case 1: /* bold */
+		attr |= FOREGROUND_INTENSITY;
+		break;
+	    case 2:  /* faint */
+	    case 22: /* normal */
+		attr &= ~FOREGROUND_INTENSITY;
+		break;
+	    case 3:  /* italic */
+		/* Unsupported */
+		break;
+	    case 4:  /* underline */
+	    case 21: /* double underline */
+		/* Wikipedia says this flag does nothing */
+		/* Furthermore, mingw doesn't define this flag
+		attr |= COMMON_LVB_UNDERSCORE; */
+		break;
+	    case 24: /* no underline */
+		/* attr &= ~COMMON_LVB_UNDERSCORE; */
+		break;
+	    case 5:  /* slow blink */
+	    case 6:  /* fast blink */
+		/* We don't have blink, but we do have background intensity */
+		attr |= BACKGROUND_INTENSITY;
+		break;
+	    case 25: /* no blink */
+		attr &= ~BACKGROUND_INTENSITY;
+		break;
+	    case 7:  /* negative */
+		negative = 1;
+		break;
+	    case 27: /* positive */
+		negative = 0;
+		break;
+	    case 8:  /* conceal */
+	    case 28: /* reveal */
+		/* Unsupported */
+		break;
+	    case 30: /* Black */
+		attr &= ~FOREGROUND_ALL;
+		break;
+	    case 31: /* Red */
+		attr &= ~FOREGROUND_ALL;
+		attr |= FOREGROUND_RED;
+		break;
+	    case 32: /* Green */
+		attr &= ~FOREGROUND_ALL;
+		attr |= FOREGROUND_GREEN;
+		break;
+	    case 33: /* Yellow */
+		attr &= ~FOREGROUND_ALL;
+		attr |= FOREGROUND_RED | FOREGROUND_GREEN;
+		break;
+	    case 34: /* Blue */
+		attr &= ~FOREGROUND_ALL;
+		attr |= FOREGROUND_BLUE;
+		break;
+	    case 35: /* Magenta */
+		attr &= ~FOREGROUND_ALL;
+		attr |= FOREGROUND_RED | FOREGROUND_BLUE;
+		break;
+	    case 36: /* Cyan */
+		attr &= ~FOREGROUND_ALL;
+		attr |= FOREGROUND_GREEN | FOREGROUND_BLUE;
+		break;
+	    case 37: /* White */
+		attr |= FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE;
+		break;
+	    case 38: /* Unknown */
+		break;
+	    case 39: /* reset */
+		attr &= ~FOREGROUND_ALL;
+		attr |= (plain_attr & FOREGROUND_ALL);
+		break;
+	    case 40: /* Black */
+		attr &= ~BACKGROUND_ALL;
+		break;
+	    case 41: /* Red */
+		attr &= ~BACKGROUND_ALL;
+		attr |= BACKGROUND_RED;
+		break;
+	    case 42: /* Green */
+		attr &= ~BACKGROUND_ALL;
+		attr |= BACKGROUND_GREEN;
+		break;
+	    case 43: /* Yellow */
+		attr &= ~BACKGROUND_ALL;
+		attr |= BACKGROUND_RED | BACKGROUND_GREEN;
+		break;
+	    case 44: /* Blue */
+		attr &= ~BACKGROUND_ALL;
+		attr |= BACKGROUND_BLUE;
+		break;
+	    case 45: /* Magenta */
+		attr &= ~BACKGROUND_ALL;
+		attr |= BACKGROUND_RED | BACKGROUND_BLUE;
+		break;
+	    case 46: /* Cyan */
+		attr &= ~BACKGROUND_ALL;
+		attr |= BACKGROUND_GREEN | BACKGROUND_BLUE;
+		break;
+	    case 47: /* White */
+		attr |= BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_BLUE;
+		break;
+	    case 48: /* Unknown */
+		break;
+	    case 49: /* reset */
+		attr &= ~BACKGROUND_ALL;
+		attr |= (plain_attr & BACKGROUND_ALL);
+		break;
+	    default:
+		/* Unsupported code */
+		break;
+	    }
+	    str++;
+	} while (*(str-1) == ';');
+
+	set_console_attr();
+	break;
+    case 'K':
+	/* TODO */
+	break;
+    default:
+	/* Unsupported code */
+	break;
+    }
+
+    return func + 1;
+}
+
+static int ansi_emulate(const char *str, FILE *stream)
+{
+    int rv = 0;
+    const char *pos = str;
+
+    while (*pos) {
+	pos = strstr(str, "\033[");
+	if (pos) {
+	    size_t len = pos - str;
+
+	    if (len) {
+		size_t output_len = fwrite(str, 1, len, stream);
+		rv += output_len;
+		if (output_len < len)
+		    return rv;
+	    }
+
+	    str = pos + 2;
+	    rv += 2;
+
+	    fflush(stream);
+
+	    pos = set_attr(str);
+	    rv += pos - str;
+	    str = pos;
+	} else {
+	    rv += strlen(str);
+	    fputs(str, stream);
+	    return rv;
+	}
+    }
+    return rv;
+}
+
+int git_fputs(const char *str, FILE *stream)
+{
+    int rv;
+
+    init();
+
+    if (!console)
+	return fputs(str, stream);
+
+    if (!isatty(fileno(stream)))
+	return fputs(str, stream);
+
+    rv = ansi_emulate(str, stream);
+
+    if (rv >= 0)
+	return 0;
+    else
+	return EOF;
+}
+
+int git_printf(const char *format, ...)
+{
+    va_list list;
+
+    char small_buf[256];
+    char *buf = small_buf;
+    int len, rv;
+
+    init();
+
+    if (!console)
+	goto abort;
+
+    if (!isatty(fileno(stdout)))
+	goto abort;
+
+    va_start(list, format);
+    len = vsnprintf(small_buf, sizeof(small_buf), format, list);
+    va_end(list);
+
+    if (len > sizeof(small_buf) - 1) {
+	buf = malloc(len + 1);
+	if (!buf)
+	    goto abort;
+
+	va_start(list, format);
+	len = vsnprintf(buf, len + 1, format, list);
+	va_end(list);
+    }
+
+    rv = ansi_emulate(buf, stdout);
+
+    if (buf != small_buf)
+	free(buf);
+    return rv;
+
+abort:
+    va_start(list, format);
+    rv = vprintf(format, list);
+    va_end(list);
+    return rv;
+}
diff --git a/git-compat-util.h b/git-compat-util.h
index 545df59..fc5168e 100644
--- a/git-compat-util.h
+++ b/git-compat-util.h
@@ -357,4 +357,11 @@ void git_qsort(void *base, size_t nmemb, size_t size,
 # define FORCE_DIR_SET_GID 0
 #endif
 
+#ifdef WIN_ANSI
+extern int git_fputs(const char *str, FILE *stream);
+extern int git_printf(const char *format, ...) __attribute__((format (printf, 1, 2)));
+#define fputs git_fputs
+#define printf(...) git_printf(__VA_ARGS__)
+#endif
+
 #endif
-- 
1.5.6.1.255.g32571

  reply	other threads:[~2008-07-02  8:33 UTC|newest]

Thread overview: 368+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-03-09 10:46 What's cooking in git.git (topics) Junio C Hamano
2008-03-12  7:50 ` Junio C Hamano
2008-03-12 12:18   ` Johannes Schindelin
2008-03-14  9:00   ` Junio C Hamano
2008-03-23 10:08     ` Junio C Hamano
2008-03-23 12:00       ` Samuel Tardieu
2008-03-23 17:15         ` Junio C Hamano
2008-03-23 22:34           ` Samuel Tardieu
2008-03-23 12:39       ` Steffen Prohaska
2008-03-23 17:37         ` Junio C Hamano
2008-03-23 21:06       ` Govind Salinas
2008-03-24  3:01         ` Junio C Hamano
2008-03-28  1:45       ` Junio C Hamano
2008-03-31  8:40         ` Junio C Hamano
2008-04-04 18:24           ` Junio C Hamano
2008-04-04 20:21             ` Kristian Høgsberg
2008-04-04 20:52               ` Junio C Hamano
2008-04-05  0:26                 ` Johannes Schindelin
2008-04-05  5:51                   ` Junio C Hamano
2008-04-09  9:43             ` Junio C Hamano
2008-04-14  7:00               ` Junio C Hamano
2008-04-15 19:23                 ` Jeff King
2008-04-19  8:19                 ` Junio C Hamano
2008-04-19 14:23                   ` Johannes Schindelin
2008-04-19 16:34                   ` Lars Hjemli
2008-04-20  4:08                     ` Junio C Hamano
2008-04-21 16:10                   ` Brandon Casey
2008-04-22 10:03                   ` Junio C Hamano
2008-04-22 13:59                     ` Ping Yin
2008-04-22 14:55                       ` Josef Weidendorfer
2008-04-22 17:13                         ` Ping Yin
2008-04-22 17:28                           ` Johannes Schindelin
2008-04-23  1:27                             ` Ping Yin
2008-04-23  2:03                               ` Ping Yin
2008-04-22 18:07                           ` Josef Weidendorfer
2008-04-23  1:59                             ` Ping Yin
2008-04-23  7:47                               ` Fedor Sergeev
2008-04-23  8:32                                 ` Ping Yin
2008-04-23  8:47                                 ` Robin Rosenberg
2008-04-23  9:16                                   ` Fedor Sergeev
2008-04-22 20:51                     ` Michele Ballabio
2008-04-23  0:22                       ` Junio C Hamano
2008-04-23  7:36                         ` Michele Ballabio
2008-04-27  6:04                     ` Junio C Hamano
2008-04-27  6:44                       ` Ping Yin
2008-05-06  6:38                       ` Junio C Hamano
2008-05-12 22:03                         ` Junio C Hamano
2008-05-13  0:02                           ` Junio C Hamano
2008-05-14 22:30                         ` Junio C Hamano
2008-05-14 22:55                           ` Daniel Barkalow
2008-05-15  4:30                             ` Junio C Hamano
2008-05-15  5:51                           ` Steffen Prohaska
2008-05-22  1:18                           ` Junio C Hamano
2008-05-22 11:35                             ` Johannes Schindelin
2008-05-22 18:17                               ` Junio C Hamano
2008-05-22 22:02                                 ` Daniel Barkalow
2008-05-25 21:29                               ` Stephan Beyer
2008-05-26  1:22                             ` Junio C Hamano
2008-05-27  5:36                               ` [PATCH] git-diff: allow --no-index semantics a bit more Junio C Hamano
2008-05-30 20:44                               ` What's cooking in git.git (topics) Junio C Hamano
2008-05-30 21:10                                 ` Jon Loeliger
2008-05-31  1:25                                   ` Stephan Beyer
2008-05-30 22:00                                 ` Steven Grimm
2008-06-02  7:58                                 ` Junio C Hamano
2008-06-02  8:10                                   ` Jakub Narebski
2008-06-02 11:56                                   ` Sebastian Bober
2008-06-02 15:17                                   ` Johannes Schindelin
2008-06-02 15:43                                     ` Shawn O. Pearce
2008-06-02 16:14                                       ` Johannes Schindelin
2008-06-02 18:13                                         ` Junio C Hamano
2008-06-02 19:17                                           ` Johannes Schindelin
2008-06-02 19:25                                             ` Johannes Schindelin
2008-06-13 10:16                                   ` Junio C Hamano
2008-06-18  7:31                                     ` Junio C Hamano
2008-06-19  8:58                                       ` Johan Herland
2008-06-21  9:44                                       ` Junio C Hamano
2008-06-21 12:14                                         ` Miklos Vajna
2008-06-24  7:59                                           ` Junio C Hamano
2008-06-24  8:12                                             ` Pieter de Bie
2008-06-24  8:16                                               ` Pieter de Bie
2008-06-24 16:02                                               ` Miklos Vajna
2008-06-24 16:25                                                 ` Johannes Schindelin
2008-06-24 18:54                                                   ` Miklos Vajna
2008-06-24 19:08                                                     ` Johannes Schindelin
2008-06-24 19:31                                                       ` Jakub Narebski
2008-06-24 19:34                                                         ` Johannes Schindelin
2008-06-24 20:06                                                           ` Jakub Narebski
2008-06-26 15:41                                                           ` Jakub Narebski
2008-06-24 20:44                                                       ` Junio C Hamano
2008-06-24 22:10                                                         ` Miklos Vajna
2008-06-24 23:16                                                           ` Junio C Hamano
2008-06-24 23:32                                                             ` Miklos Vajna
2008-06-25  2:57                                                               ` Junio C Hamano
2008-06-25  3:08                                                               ` しらいしななこ
2008-06-25  3:22                                                                 ` [PATCH] Keep some git-* programs in $(bindir) Junio C Hamano
2008-06-25  3:26                                                                   ` [PATCH] Ask for "git program" when asking for "git-program" over SSH connection Junio C Hamano
2008-06-25  3:45                                                                     ` Shawn O. Pearce
2008-06-25  4:32                                                                       ` Junio C Hamano
2008-06-25  4:44                                                                         ` Shawn O. Pearce
2008-06-25  5:09                                                                           ` Junio C Hamano
2008-06-25  5:13                                                                             ` Junio C Hamano
2008-06-25  5:27                                                                               ` Junio C Hamano
2008-06-25  5:38                                                                                 ` Shawn O. Pearce
2008-06-25 22:47                                                                                   ` [PATCH] daemon: accept "git program" as well Junio C Hamano
2008-06-25 22:55                                                                                     ` [PATCH] Make clients ask for "git program" over ssh and local transport Junio C Hamano
2008-06-25 22:58                                                                                       ` [PATCH] Ask for "git program" even against git-daemon Junio C Hamano
2008-06-25 23:27                                                                                         ` Shawn O. Pearce
2008-06-25 23:36                                                                                           ` Junio C Hamano
2008-06-25 23:57                                                                                             ` Shawn O. Pearce
2008-06-26  0:07                                                                                               ` Junio C Hamano
2008-06-25 23:13                                                                                       ` [PATCH] Make clients ask for "git program" over ssh and local transport Shawn O. Pearce
2008-06-25 23:02                                                                                     ` [PATCH] daemon: accept "git program" as well Shawn O. Pearce
2008-06-25 23:26                                                                                       ` Junio C Hamano
2008-06-26  8:20                                                                                         ` Tommi Virtanen
2008-06-26 23:38                                                                                           ` Olivier Marin
2008-06-26 23:42                                                                                             ` Junio C Hamano
2008-06-25 13:06                                                                                 ` [PATCH] Ask for "git program" when asking for "git-program" over SSH connection Theodore Tso
2008-06-25 17:42                                                                                   ` Junio C Hamano
2008-06-25  5:34                                                                               ` Shawn O. Pearce
2008-06-25  5:53                                                                                 ` Junio C Hamano
2008-06-25  5:30                                                                           ` Junio C Hamano
2008-06-25  4:17                                                                   ` [PATCH] Keep some git-* programs in $(bindir) Shawn O. Pearce
2008-06-25  4:19                                                                   ` Daniel Barkalow
2008-06-25  4:37                                                                     ` Shawn O. Pearce
2008-06-25  3:26                                                                 ` What's cooking in git.git (topics) Shawn O. Pearce
2008-06-25  0:11                                                             ` Jakub Narebski
2008-06-25  3:32                                                               ` Shawn O. Pearce
2008-06-25  7:29                                                               ` Miklos Vajna
2008-06-23  7:15                                         ` Junio C Hamano
2008-06-23 12:15                                           ` Miklos Vajna
2008-06-25  9:31                                           ` Junio C Hamano
2008-06-29  8:50                                             ` [PATCH] Make default expiration period of reflog used for stash infinite Junio C Hamano
2008-06-30 23:45                                               ` Olivier Marin
2008-07-01  7:28                                                 ` Junio C Hamano
2008-07-02 10:59                                                   ` [PATCH] Disconnect stash from its base commit Nanako Shiraishi
2008-07-02 13:51                                                     ` Johannes Schindelin
2008-07-02 19:01                                                       ` Junio C Hamano
2008-07-02 19:54                                                         ` Abhijit Menon-Sen
2008-07-02 21:04                                                           ` Junio C Hamano
2008-07-03  2:23                                                             ` [PATCH] Implement "git stash branch <newbranch> <stash>" Abhijit Menon-Sen
2008-07-03  4:12                                                               ` Junio C Hamano
2008-07-03  6:16                                                                 ` Abhijit Menon-Sen
2008-07-06 11:23                                                                   ` [PATCH v3] " Abhijit Menon-Sen
2008-07-06 12:54                                                                     ` Johannes Schindelin
2008-07-06 14:45                                                                       ` [PATCH] Add a test for "git stash branch" Abhijit Menon-Sen
2008-07-06 19:53                                                                         ` Junio C Hamano
2008-07-06 21:20                                                                           ` [PATCH v2] " Abhijit Menon-Sen
2008-06-29  8:50                                             ` [PATCH] Teach git-merge to pass -X<option> to the backend strategy module Junio C Hamano
2008-06-29 10:32                                               ` Jakub Narebski
2008-06-29 19:09                                                 ` Junio C Hamano
2008-06-29  8:55                                             ` What's cooking in git.git (topics) Junio C Hamano
2008-06-29 18:35                                               ` Linus Torvalds
2008-06-29 19:08                                                 ` Junio C Hamano
2008-06-29 20:11                                                 ` Junio C Hamano
2008-06-29 20:15                                                   ` Pieter de Bie
2008-06-29 21:57                                                     ` Johannes Schindelin
2008-06-29 22:00                                                     ` Steffen Prohaska
2008-06-30  3:30                                               ` Jeff King
2008-06-30  5:31                                                 ` Junio C Hamano
2008-06-30  5:33                                                   ` Jeff King
2008-06-30  5:38                                                     ` Junio C Hamano
2008-06-30  9:08                                               ` Junio C Hamano
2008-06-30 11:19                                                 ` How to reduce remaining differences to 4msysgit? (was What's cooking in git.git (topics)) Steffen Prohaska
2008-06-30 18:47                                                   ` [msysGit] " Johannes Sixt
2008-07-01  0:03                                                     ` Clifford Caoile
2008-07-02  8:31                                                     ` Steffen Prohaska
2008-07-02  8:32                                                       ` [PATCH 01/12] Fake reencoding success under NO_ICONV instead of returning NULL Steffen Prohaska
2008-07-02  8:32                                                         ` [PATCH 02/12] Do not complain about "no common commits" in an empty repo Steffen Prohaska
2008-07-02  8:32                                                           ` [PATCH 03/12] MinGW: Convert CR/LF to LF in tag signatures Steffen Prohaska
2008-07-02  8:32                                                             ` [PATCH 04/12] Avoid calling signal(SIGPIPE, ..) for MinGW builds Steffen Prohaska
2008-07-02  8:32                                                               ` [PATCH 05/12] Windows(msysgit): Per default, display help as HTML in default browser Steffen Prohaska
2008-07-02  8:32                                                                 ` [PATCH 06/12] connect: Fix custom ports with plink (Putty's ssh) Steffen Prohaska
2008-07-02  8:32                                                                   ` [PATCH 07/12] Fixed text file auto-detection: treat EOF character 032 at the end of file as printable Steffen Prohaska
2008-07-02  8:32                                                                     ` [PATCH 08/12] fast-import: MinGW does not have getppid(). So do not print it Steffen Prohaska
2008-07-02  8:32                                                                       ` [PATCH 09/12] We need to check for msys as well as Windows in add--interactive Steffen Prohaska
2008-07-02  8:32                                                                         ` Steffen Prohaska [this message]
2008-07-02  8:32                                                                           ` [PATCH 11/12] verify_path(): do not allow absolute paths Steffen Prohaska
2008-07-02  8:32                                                                             ` [PATCH 12/12] [TODO] setup: bring changes from 4msysgit/next to next Steffen Prohaska
2008-07-02 16:17                                                                               ` [msysGit] " Johannes Schindelin
2008-07-02 17:08                                                                                 ` Steffen Prohaska
2008-07-02 19:32                                                                                   ` [msysGit] " Johannes Sixt
2008-07-03  6:06                                                                                     ` Steffen Prohaska
2008-07-03  6:13                                                                                       ` Junio C Hamano
2008-07-02  9:21                                                                             ` [PATCH 11/12] verify_path(): do not allow absolute paths Junio C Hamano
2008-07-02 14:24                                                                               ` Steffen Prohaska
2008-07-02 16:15                                                                               ` Johannes Schindelin
2008-07-02 17:20                                                                                 ` Steffen Prohaska
2008-07-02 17:31                                                                                   ` Johannes Schindelin
2008-07-02 19:17                                                                           ` [msysGit] [PATCH 10/12] Add ANSI control code emulation for the Windows console Johannes Sixt
2008-07-02 19:32                                                                             ` Peter Harris
2008-07-07 18:41                                                                           ` Johannes Sixt
2008-07-02  9:20                                                                       ` [PATCH 08/12] fast-import: MinGW does not have getppid(). So do not print it Junio C Hamano
2008-07-02 14:22                                                                         ` Steffen Prohaska
2008-07-02 16:52                                                                         ` Johannes Schindelin
2008-07-02  9:16                                                                     ` [PATCH 07/12] Fixed text file auto-detection: treat EOF character 032 at the end of file as printable Junio C Hamano
2008-07-11 16:48                                                                       ` [PATCH] " Steffen Prohaska
2008-07-11 18:42                                                                         ` Johannes Schindelin
2008-07-11 20:32                                                                           ` Steffen Prohaska
2008-07-11 20:40                                                                             ` Johannes Schindelin
2008-07-02 19:04                                                                   ` [PATCH 06/12] connect: Fix custom ports with plink (Putty's ssh) Johannes Sixt
2008-07-03 11:10                                                                     ` Johannes Schindelin
2008-07-04  8:50                                                                       ` Steffen Prohaska
2008-07-04  9:18                                                                     ` Junio C Hamano
2008-07-04  9:29                                                                       ` Steffen Prohaska
2008-07-04 16:09                                                                         ` Clifford Caoile
2008-07-04 20:11                                                                           ` [msysGit] " Edward Z. Yang
2008-07-02  9:11                                                                 ` [PATCH 05/12] Windows(msysgit): Per default, display help as HTML in default browser Junio C Hamano
2008-07-02 18:57                                                                 ` Johannes Sixt
2008-07-04  9:06                                                                   ` Steffen Prohaska
2008-07-04  9:09                                                                     ` [PATCH 1/2] help.c: Add support for htmldir relative to git_exec_path() Steffen Prohaska
2008-07-04  9:09                                                                       ` [PATCH 2/2] help (Windows): Display HTML in default browser using Win32 API Steffen Prohaska
2008-07-04  9:26                                                                       ` [PATCH 1/2] help.c: Add support for htmldir relative to git_exec_path() Junio C Hamano
2008-07-04 12:35                                                                         ` Johannes Schindelin
2008-07-11  7:27                                                                           ` Steffen Prohaska
2008-07-11  7:28                                                                             ` [PATCH 1/3] Move code interpreting path relative to exec-dir to new function system_path() Steffen Prohaska
2008-07-11  7:28                                                                               ` [PATCH 2/3] help.c: Add support for htmldir relative to git_exec_path() Steffen Prohaska
2008-07-11  7:28                                                                                 ` [PATCH 3/3] help (Windows): Display HTML in default browser using Windows' shell API Steffen Prohaska
2008-07-11  7:35                                                                                   ` Steffen Prohaska
2008-07-11  7:37                                                                                     ` [PATCH 3/3 FIXED] " Steffen Prohaska
2008-07-12  3:26                                                                                       ` Junio C Hamano
2008-07-12  6:45                                                                                         ` Steffen Prohaska
2008-07-12  7:07                                                                                           ` Junio C Hamano
2008-07-12 20:41                                                                                             ` Johannes Sixt
2008-07-13  8:58                                                                                               ` Junio C Hamano
2008-07-13 20:31                                                                                                 ` [PATCH] Move code interpreting path relative to exec-dir to new function system_path() Johannes Sixt
2008-07-13 20:31                                                                                                   ` [PATCH] help.c: Add support for htmldir relative to git_exec_path() Johannes Sixt
2008-07-13 20:31                                                                                                     ` [PATCH] help (Windows): Display HTML in default browser using Windows' shell API Johannes Sixt
2008-07-13 20:31                                                                                                       ` [PATCH] Fix relative built-in paths to be relative to the command invocation Johannes Sixt
2008-07-13 20:31                                                                                                         ` [PATCH] Allow the built-in exec path to be relative to the command invocation path Johannes Sixt
2008-07-13 20:31                                                                                                           ` [PATCH] Allow add_path() to add non-existent directories to the path Johannes Sixt
2008-07-14  7:13                                                                                                             ` Johannes Sixt
2008-07-13 20:45                                                                                                           ` [PATCH] Allow the built-in exec path to be relative to the command invocation path Johannes Schindelin
2008-07-13 20:43                                                                                                         ` [PATCH] Fix relative built-in paths to be relative to the command invocation Johannes Schindelin
2008-07-14  6:55                                                                                                           ` Johannes Sixt
2008-07-14 12:20                                                                                                             ` Johannes Schindelin
2008-07-14 18:54                                                                                                               ` Johannes Sixt
2008-07-14 19:03                                                                                                                 ` Junio C Hamano
2008-07-14  8:47                                                                                                           ` Johannes Sixt
2008-07-14 21:41                                                                                                             ` [PATCH 0/5] replacement for the part of js/more-win that is in pu Johannes Sixt
2008-07-14 21:41                                                                                                               ` [PATCH 1/5] Makefile: Normalize $(bindir) and $(gitexecdir) before comparing Johannes Sixt
2008-07-14 21:41                                                                                                                 ` [PATCH 2/5] Record the command invocation path early Johannes Sixt
2008-07-14 21:41                                                                                                                   ` [PATCH 3/5] Fix relative built-in paths to be relative to the command invocation Johannes Sixt
2008-07-14 21:41                                                                                                                     ` [PATCH 4/5] Allow the built-in exec path to be relative to the command invocation path Johannes Sixt
2008-07-14 21:41                                                                                                                       ` [PATCH 5/5] Allow add_path() to add non-existent directories to the path Johannes Sixt
2008-07-15  7:59                                                                                                               ` [PATCH 0/5] replacement for the part of js/more-win that is in pu Johannes Sixt
2008-07-11  9:02                                                                             ` [PATCH 1/2] help.c: Add support for htmldir relative to git_exec_path() Johannes Sixt
2008-07-02  9:22                                                               ` [PATCH 04/12] Avoid calling signal(SIGPIPE, ..) for MinGW builds Junio C Hamano
2008-07-02 10:03                                                                 ` Marius Storm-Olsen
2008-07-02 14:29                                                                   ` Steffen Prohaska
2008-07-02 18:46                                                             ` [msysGit] [PATCH 03/12] MinGW: Convert CR/LF to LF in tag signatures Johannes Sixt
2008-07-03 11:08                                                               ` Johannes Schindelin
2008-07-11 16:55                                                               ` [PATCH] " Steffen Prohaska
2008-07-02  8:58                                                           ` [PATCH 02/12] Do not complain about "no common commits" in an empty repo Junio C Hamano
2008-07-02 14:04                                                             ` Steffen Prohaska
2008-07-02 17:07                                                               ` Johannes Schindelin
2008-07-02 18:43                                                         ` [PATCH 01/12] Fake reencoding success under NO_ICONV instead of returning NULL Johannes Sixt
2008-06-30 14:09                                                 ` What's cooking in git.git (topics) Kristian Høgsberg
2008-06-30 15:58                                                   ` Jakub Narebski
2008-06-30 22:15                                                     ` Junio C Hamano
2008-06-30 22:15                                                   ` Junio C Hamano
2008-06-30 22:51                                                     ` Andrew Morton
2008-06-30 23:09                                                       ` Johannes Schindelin
2008-06-30 22:53                                                     ` Petr Baudis
2008-07-01  0:57                                                     ` Stephen Rothwell
2008-07-01 15:44                                                     ` Kristian Høgsberg
2008-07-01 10:11                                                 ` Jeff King
2008-07-01 11:44                                                   ` [PATCH] git-add--interactive: manual hunk editing mode Thomas Rast
2008-07-01 16:48                                                     ` Johannes Schindelin
2008-07-01 23:54                                                     ` Junio C Hamano
2008-07-02  5:39                                                     ` Junio C Hamano
2008-07-02  7:00                                                       ` Thomas Rast
2008-07-02  8:38                                                         ` Junio C Hamano
2008-07-02  8:02                                                       ` Jeff King
2008-07-02  8:08                                                         ` Junio C Hamano
2008-07-02  8:32                                                           ` Jeff King
2008-07-02 13:13                                                             ` Johannes Schindelin
2008-07-02 18:27                                                               ` Junio C Hamano
2008-07-02 21:58                                                       ` [PATCH 0/3] git-add--interactive: use --recount, editing Thomas Rast
2008-07-02 21:59                                                         ` [PATCH 1/3] git-add--interactive: replace hunk recounting with apply --recount Thomas Rast
2008-07-02 21:59                                                           ` [PATCH 2/3] git-add--interactive: remove hunk coalescing Thomas Rast
2008-07-02 22:00                                                             ` [PATCH 3/3] git-add--interactive: manual hunk editing mode Thomas Rast
2008-07-02 22:26                                                             ` [PATCH 2/3] git-add--interactive: remove hunk coalescing Junio C Hamano
2008-07-02 22:35                                                               ` Junio C Hamano
2008-07-03 19:24                                                                 ` Thomas Rast
2008-07-03 21:46                                                                   ` Junio C Hamano
2008-07-02  4:41                                                 ` What's cooking in git.git (topics) Junio C Hamano
2008-07-06 10:04                                                   ` Junio C Hamano
2008-07-06 11:10                                                     ` Johannes Schindelin
2008-07-07  1:36                                                       ` Junio C Hamano
2008-07-08  2:46                                                     ` Junio C Hamano
2008-07-10  2:32                                                       ` Junio C Hamano
2008-07-14  5:11                                                         ` Junio C Hamano
2008-07-14  6:45                                                           ` Junio C Hamano
2008-07-14  7:50                                                           ` Closing the merge window for 1.6.0 Junio C Hamano
2008-07-14  8:07                                                             ` Johannes Sixt
2008-07-14  8:50                                                             ` Jakub Narebski
2008-07-14  8:55                                                             ` Petr Baudis
2008-07-14 11:57                                                               ` Johannes Schindelin
2008-07-14 12:41                                                                 ` Gerrit Pape
2008-07-14 12:56                                                                   ` Johannes Schindelin
2008-07-14 17:54                                                                   ` Nicolas Pitre
2008-07-14 19:00                                                                     ` Junio C Hamano
2008-07-14 19:19                                                                       ` Teemu Likonen
2008-07-15  3:14                                                                         ` Martin Langhoff
2008-07-15  9:20                                                                       ` Petr Baudis
2008-07-15 15:06                                                                         ` Dmitry Potapov
2008-07-15 15:27                                                                           ` Johannes Schindelin
2008-07-15 15:51                                                                             ` Avery Pennarun
2008-07-15 16:26                                                                             ` Nicolas Pitre
2008-07-15 16:46                                                                               ` Sverre Rabbelier
2008-07-15 17:28                                                                               ` Petr Baudis
2008-07-15 17:04                                                                             ` Dmitry Potapov
2008-07-15 18:51                                                                             ` Junio C Hamano
2008-07-15 22:10                                                                               ` Johannes Schindelin
2008-07-15 22:33                                                                                 ` Junio C Hamano
2008-07-15 22:45                                                                                   ` Johannes Schindelin
2008-07-15  2:51                                                                     ` Shawn O. Pearce
2008-07-15  3:30                                                                       ` Nicolas Pitre
2008-07-14 12:43                                                                 ` Petr Baudis
2008-07-20  2:23                                                                   ` Nick Andrew
2008-07-14 19:16                                                               ` Junio C Hamano
2008-07-15  9:09                                                                 ` Petr Baudis
2008-07-14 11:53                                                           ` What's cooking in git.git (topics) Johannes Schindelin
2008-07-14 23:12                                                           ` Lea Wiemann
2008-07-14 23:20                                                             ` Lea Wiemann
2008-07-15  0:03                                                               ` Junio C Hamano
2008-07-15  3:38                                                           ` Geoffrey Irving
2008-07-15  9:22                                                             ` Johannes Schindelin
2008-07-15 16:48                                                               ` Geoffrey Irving
2008-07-16  3:33                                                           ` Junio C Hamano
2008-07-17  8:08                                                             ` Junio C Hamano
2008-07-17 13:09                                                               ` Stephan Beyer
2008-07-18  8:50                                                               ` Nanako Shiraishi
2008-07-18  9:08                                                                 ` Junio C Hamano
2008-07-18  9:20                                                                 ` Nanako Shiraishi
2008-07-18  9:43                                                                   ` Junio C Hamano
2008-07-18 11:55                                                                     ` Johannes Schindelin
2008-07-19  5:32                                                                       ` Junio C Hamano
2008-07-19 11:19                                                                         ` Johannes Schindelin
2008-07-19 16:55                                                                           ` Junio C Hamano
2008-07-19 23:16                                                                             ` Johannes Schindelin
2008-07-20 13:04                                                                           ` Miklos Vajna
2008-07-20 13:16                                                                             ` Johannes Schindelin
2008-07-20 18:27                                                                             ` Junio C Hamano
2008-07-20 19:07                                                                               ` Johannes Schindelin
2008-07-20 19:58                                                                                 ` Junio C Hamano
2008-07-20 20:03                                                                                   ` Sverre Rabbelier
2008-07-20 20:33                                                                                     ` Miklos Vajna
2008-07-20 22:58                                                                                       ` Sverre Rabbelier
2008-07-21  8:47                                                                                         ` Jakub Narebski
2008-07-20 20:33                                                                                     ` Junio C Hamano
2008-07-20 22:24                                                                                   ` Johannes Schindelin
2008-07-18  9:44                                                                   ` Petr Baudis
2008-07-18  9:58                                                                     ` Junio C Hamano
2010-12-13 19:09                                                                       ` Yaroslav Halchenko
2010-12-13 20:46                                                                         ` Junio C Hamano
2010-12-13 21:46                                                                           ` Yaroslav Halchenko
2010-12-13 22:15                                                                             ` Junio C Hamano
2010-12-13 22:36                                                                               ` Yaroslav Halchenko
2010-12-14  7:23                                                                             ` Johannes Sixt
2010-12-14 14:21                                                                               ` Yaroslav Halchenko
2008-07-19  5:13                                                                     ` Nanako Shiraishi
2008-07-18 11:56                                                                 ` Johannes Schindelin
2008-07-20 10:20                                                                 ` Nanako Shiraishi
2008-07-20  1:58                                                               ` Junio C Hamano
2008-07-20 22:40                                                                 ` Petr Baudis
2008-07-20 23:04                                                                   ` Junio C Hamano
2008-06-30 14:59                                               ` Brandon Casey

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: http://vger.kernel.org/majordomo-info.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1214987532-23640-10-git-send-email-prohaska@zib.de \
    --to=prohaska@zib.de \
    --cc=git@peter.is-a-geek.org \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=johannes.sixt@telecom.at \
    --cc=msysgit@googlegroups.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).