Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[jgit-dev] File.toPath() usages may result in InvalidPathException

I just wanted to point out that jgit has several unsafe usages of File.toPath() which may (and actually do) throw nasty InvalidPathExceptions. The vast majority of bug reports are caused by FileUtils.lastModified and are looking like:

java.nio.file.InvalidPathException
	at sun.nio.fs.UnixPath.encode(UnixPath.java:147)
	at sun.nio.fs.UnixPath.<init>(UnixPath.java:71)
	at sun.nio.fs.UnixFileSystem.getPath(UnixFileSystem.java:281)
	at java.io.File.toPath(File.java:2234)
	at org.eclipse.jgit.util.FileUtils.lastModified(FileUtils.java:585)
	at org.eclipse.jgit.util.FS.lastModified(FS.java:298)
at org.eclipse.jgit.internal.storage.file.FileSnapshot.save(FileSnapshot.java:109) at org.eclipse.jgit.internal.storage.file.RefDirectory.scanRef(RefDirectory.java:953)

I think it would be reasonable to catch the InvalidPathException and convert into an IOException. I can provide a patch, if of interest.

-Marc




Back to the top