git-cvsexportcommit: Fix calling Perl's rel2abs() on MSYS

Due to MSYS path mangling GIT_DIR contains a Windows-style path when checked inside a Perl script even if GIT_DIR was previously set to an MSYS-style path in a shell script. So explicitly convert to an MSYS-style path before calling Perl's rel2abs() to make it work. This fix was inspired by a very similar patch in WebKit: http://trac.webkit.org/changeset/76255/trunk/Tools/Scripts/commit-log-editor Signed-off-by: Sebastian Schuberth <sschuberth@gmail.com> Tested-by: Pat Thoyts <patthoyts@users.sourceforge.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Sebastian Schuberth committed Jan 11, 2012 at 10:21 UTC 37495eef4c6071fa124911753cfca3690ea4bf96
1 file changed +7
git-cvsexportcommit.perl
+7
@@ -30,6 +30,13 @@ if ($opt_w || $opt_W) {
30 chomp($gd);
31 $ENV{GIT_DIR} = $gd;
32 }
33 +
34 + # On MSYS, convert a Windows-style path to an MSYS-style path
35 + # so that rel2abs() below works correctly.
36 + if ($^O eq 'msys') {
37 + $ENV{GIT_DIR} =~ s#^([[:alpha:]]):/#/$1/#;
38 + }
39 +
40 # Make sure GIT_DIR is absolute
41 $ENV{GIT_DIR} = File::Spec->rel2abs($ENV{GIT_DIR});
42 }