]> Pileus Git - ~andy/git/commitdiff
contrib/difftool: change trap condition from SIGINT to INT
authorMarkus Heidelberg <markus.heidelberg@web.de>
Mon, 19 Jan 2009 23:38:16 +0000 (00:38 +0100)
committerJunio C Hamano <gitster@pobox.com>
Tue, 20 Jan 2009 06:39:15 +0000 (22:39 -0800)
git-difftool worked for me on an up-to-date Gentoo Linux at home, but
didn't work on a somewhat older Ubuntu Linux 7.10 at work and failed
with the following error, where 'Makefile' was locally modified:

    trap: 244: SIGINT: bad trap
    external diff died, stopping at Makefile.

In 'man 1p trap' there is written:

    "The condition can be EXIT, 0 (equivalent to EXIT), or a signal
    specified using a symbolic name, without the SIG prefix, [...]"

    "Implementations may permit names with the SIG prefix or ignore case
    in signal names as an extension."

So now we do it the POSIX compliant way instead of using an extension.

Signed-off-by: Markus Heidelberg <markus.heidelberg@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
contrib/difftool/git-difftool-helper

index f013726d0f77a4d8fd9faa00ec38e117e41bcb27..a2eb59b0f0d0afbc57cbf2b4debcd67dba46dd1e 100755 (executable)
@@ -53,7 +53,7 @@ launch_merge_tool () {
 
        # Create and ensure that we clean up $BACKUP
        test -f "$MERGED" && cp -- "$MERGED" "$BACKUP"
-       trap sigint_handler SIGINT
+       trap sigint_handler INT
 
        # $LOCAL and $REMOTE are temporary files so prompt
        # the user with the real $MERGED name before launching $merge_tool.