]> source.dussan.org Git - jgit.git/commit
Fix QuotedString.GIT_PATH escaping rules 28/1528/1
authorShawn O. Pearce <spearce@spearce.org>
Fri, 3 Sep 2010 20:01:57 +0000 (13:01 -0700)
committerShawn O. Pearce <spearce@spearce.org>
Fri, 3 Sep 2010 20:02:01 +0000 (13:02 -0700)
commit2aa4196f1fd02851976d2c214302d87ea26663d0
tree4c65dafa491d9b9a82ac60b98d1b2ce34d9b2cba
parent34a755f1df959bd34f9426143765e650665b1afb
Fix QuotedString.GIT_PATH escaping rules

We shouldn't escape non-special ASCII characters such as '@' or '~'.
These are valid in a path name on POSIX systems, and may appear as
part of a path in a GNU or Git style patch script.  Escaping them
into octal just obfuscates the user's intent, with no gain.

When parsing an escaped octal sequence, we must parse no more
than 3 digits.  That is, "\1002" is actually "@2", not the Unicode
character \u0202.

Change-Id: I3a849a0d318e69b654f03fd559f5d7f99dd63e5c
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
org.eclipse.jgit.test/tst/org/eclipse/jgit/util/QuotedStringGitPathStyleTest.java
org.eclipse.jgit/src/org/eclipse/jgit/util/QuotedString.java