Code

[PATCH] gitk: properly deal with tag names containing / (slash)
authorGerrit Pape <pape@smarden.org>
Mon, 11 Feb 2008 10:57:40 +0000 (10:57 +0000)
committerPaul Mackerras <paulus@samba.org>
Mon, 11 Feb 2008 23:05:59 +0000 (10:05 +1100)
When creating a tag through gitk, and the tag name includes a slash (or
slashes), gitk errors out in a popup window.  This patch makes gitk use
'git tag' to create the tag instead of modifying files in refs/tags/,
which fixes the issue; if 'git tag' throws an error, gitk pops up with
the error message.

The problem was reported by Frédéric Brière through
 http://bugs.debian.org/464104

Signed-off-by: Gerrit Pape <pape@smarden.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
gitk

diff --git a/gitk b/gitk
index dab9df067eb1f575002ae2123e60869bfe5e7d7f..80544bfc538d3f750031057e5adb15e17b629a54 100755 (executable)
--- a/gitk
+++ b/gitk
@@ -6149,11 +6149,7 @@ proc domktag {} {
        return
     }
     if {[catch {
-       set dir [gitdir]
-       set fname [file join $dir "refs/tags" $tag]
-       set f [open $fname w]
-       puts $f $id
-       close $f
+       exec git tag $tag $id
     } err]} {
        error_popup "[mc "Error creating tag:"] $err"
        return