threads / patch / 13953

patchgitk - work around stderr redirection on Cygwin

Subject: [PATCH] gitk - work around stderr redirection on Cygwin

## tl;dr

6 messages between Jun 14, 2008 and Jul 18, 2008. Diffs are folded; open one to read it.

replies: 5people: 3as markdown or json

Mark Levedahl· Jun 14, 2008, 16:57 UTC · lore

Cygwin is *still* shipping with antiquated Tcl 8.4.1, and will continue to do so for the indefinite future. This version does not understand the "2>@1" redirection syntax, so such redirection of stderr must be done using sh.

Signed-off-by: Mark Levedahl <mlevedahl@gmail.com>
---
 gitk |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
Show changes to gitk +2 −2
diff --git a/gitk b/gitk
index fddcb45..386a385 100755
--- a/gitk
+++ b/gitk
@@ -7625,7 +7625,7 @@ proc resethead {} {
     tkwait window $w
     if {!$confirm_ok} return
     if {[catch {set fd [open \
-	    [list | git reset --$resettype $rowmenuid 2>@1] r]} err]} {
+	    [list | sh -c "git reset --$resettype $rowmenuid 2>&1"] r]} err]} {
 	error_popup $err
     } else {
 	dohidelocalchanges
@@ -7691,7 +7691,7 @@ proc cobranch {} {
     update
     dohidelocalchanges
     if {[catch {
-	set fd [open [list | git checkout $headmenuhead 2>@1] r]
+	set fd [open [list | sh -c "git checkout $headmenuhead 2>&1"] r]
     } err]} {
 	notbusy checkout
 	error_popup $err
-- 
1.5.6.rc2.67.g19fe3
Mark Levedahl· Jul 13, 2008, 20:37 UTC · re: Mark Levedahl · lore

Re: [PATCH] gitk - work around stderr redirection on Cygwin

Mark Levedahl wrote:
Show 5 quoted lines
> Cygwin is *still* shipping with antiquated Tcl 8.4.1, and will continue
> to do so for the indefinite future. This version does not understand
> the "2>@1" redirection syntax, so such redirection of stderr must be
> done using sh.
>   

Ping. This bug is in 1.5.6.x, and thus also in the current Cygwin git release: as a result, several gitk context menu items cause errors. (Let me know if I should resend the patch).

Mark
Junio C Hamano· Jul 13, 2008, 21:35 UTC · re: Mark Levedahl · lore

Re: [PATCH] gitk - work around stderr redirection on Cygwin

Mark Levedahl <mlevedahl@gmail.com> writes:
Show 9 quoted lines
> Mark Levedahl wrote:
>> Cygwin is *still* shipping with antiquated Tcl 8.4.1, and will continue
>> to do so for the indefinite future. This version does not understand
>> the "2>@1" redirection syntax, so such redirection of stderr must be
>> done using sh.
>
> Ping. This bug is in 1.5.6.x, and thus also in the current Cygwin git
> release: as a result, several gitk context menu items cause
> errors. (Let me know if I should resend the patch).

In the meantime, is it an option to apply this as a port specific patch when Cygwin and whichever distribution ship with old Tcl package their binary releases?

Just checking how urgent this issue is (8.4.1 was from Oct 2002 if I am not mistaken) for maintainers of Cygwin port, and I am suspecting that kernel folks are somewhat busy near/around OLS/KS timeframe (but not me).

Mark Levedahl· Jul 13, 2008, 21:53 UTC · re: Junio C Hamano · lore

Re: [PATCH] gitk - work around stderr redirection on Cygwin

Junio C Hamano wrote:
Show 24 quoted lines
> Mark Levedahl <mlevedahl@gmail.com> writes:
>
>   
>> Mark Levedahl wrote:
>>     
>>> Cygwin is *still* shipping with antiquated Tcl 8.4.1, and will continue
>>> to do so for the indefinite future. This version does not understand
>>> the "2>@1" redirection syntax, so such redirection of stderr must be
>>> done using sh.
>>>       
>> Ping. This bug is in 1.5.6.x, and thus also in the current Cygwin git
>> release: as a result, several gitk context menu items cause
>> errors. (Let me know if I should resend the patch).
>>     
>
> In the meantime, is it an option to apply this as a port specific patch
> when Cygwin and whichever distribution ship with old Tcl package their
> binary releases?
>
> Just checking how urgent this issue is (8.4.1 was from Oct 2002 if I am
> not mistaken) for maintainers of Cygwin port, and I am suspecting that
> kernel folks are somewhat busy near/around OLS/KS timeframe (but not me).
>
>   
(I didn't trim the message as I've copied the Cygwin git maintainer).

I certainly have this patch in my tree so the folks I supply git to who use Cygwin have this patch. The question of whether to maintain this out of tree for the official Cygwin release is up to Eric.

Mark
Eric Blake· Jul 17, 2008, 03:55 UTC · re: Mark Levedahl · lore

Re: [PATCH] gitk - work around stderr redirection on Cygwin

According to Mark Levedahl on 7/13/2008 3:53 PM:
Show 6 quoted lines
>>>    
>>>> Cygwin is *still* shipping with antiquated Tcl 8.4.1
>>>>       
>>> Ping. This bug is in 1.5.6.x, and thus also in the current Cygwin git
>>> release: as a result, several gitk context menu items cause
>>> errors. (Let me know if I should resend the patch).
> I certainly have this patch in my tree so the folks I supply git to who 
> use Cygwin have this patch. The question of whether to maintain this out 
> of tree for the official Cygwin release is up to Eric.

Could you point me to the patch? I need to roll the Cygwin git release of 1.5.6.3 anyway (in part because cygwin has upgraded from perl 5.8 to 5.10). This sounds like something worth me including as a vendor patch, if it does not get folded into the main repo.

-- 
Don't work too hard, make some time for fun as well!

Eric Blake             ebb9@byu.net
Mark Levedahl· Jul 18, 2008, 02:41 UTC · re: Eric Blake · lore

Re: [PATCH] gitk - work around stderr redirection on Cygwin

Eric Blake wrote:
Show 6 quoted lines
> Could you point me to the patch?  I need to roll the Cygwin git 
> release of
> 1.5.6.3 anyway (in part because cygwin has upgraded from perl 5.8 to
> 5.10).  This sounds like something worth me including as a vendor patch,
> if it does not get folded into the main repo.
>

The patch is at the top of this thread: http://article.gmane.org/gmane.comp.version-control.git/85023/match=gitk+work+around+stderr+redirection

(I'll send you a patch against Junio's tree privately as a backup).
Mark

← back to recent threads