]> git.ipfire.org Git - thirdparty/git.git/commit - git-svn.perl
git svn: info: correctly handle absolute path args
authorEric Wong <normalperson@yhbt.net>
Sun, 3 Aug 2014 01:44:08 +0000 (01:44 +0000)
committerEric Wong <normalperson@yhbt.net>
Sun, 14 Sep 2014 08:08:24 +0000 (08:08 +0000)
commit4950eed520ce3dbb786e33fe8a8dc48e492998b4
tree50f8746f5a2e34f974912561089b9026e6705c62
parent785a1c82587ca6e796595e63508ad6b32104d16c
git svn: info: correctly handle absolute path args

Calling "git svn info $(pwd)" would hit:
  "Reading from filehandle failed at ..."
errors due to improper prefixing and canonicalization.

Strip the toplevel path from absolute filesystem paths to ensure
downstream canonicalization routines are only exposed to paths
tracked in git (or SVN).

v2:
  Thanks to Andrej Manduch for originally noticing the issue
  and fixing my original version of this to handle
  more corner cases such as "/path/to/top/../top" and
  "/path/to/top/../top/file" as shown in the new test cases.

v3:
  Fix pathname portability problems pointed out by Johannes Sixt
  with a hint from brian m. carlson.

Cc: Johannes Sixt <j6t@kdbg.org>
Cc: "brian m. carlson" <sandals@crustytoothpaste.net>
Signed-off-by: Andrej Manduch <amanduch@gmail.com>
Signed-off-by: Eric Wong <normalperson@yhbt.net>
git-svn.perl
t/t9119-git-svn-info.sh