From faa08091468d43d7cd233cd3c572d9f9dada5515 Mon Sep 17 00:00:00 2001 From: Mark Harrah Date: Tue, 13 Dec 2011 17:29:08 -0500 Subject: [PATCH] IO.touch operates on absolute file --- util/io/IO.scala | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/util/io/IO.scala b/util/io/IO.scala index 6d2c73138..3aef64075 100644 --- a/util/io/IO.scala +++ b/util/io/IO.scala @@ -74,12 +74,13 @@ object IO /** Creates a file at the given location.*/ def touch(file: File, setModified: Boolean = true) { - createDirectory(file.getParentFile) - val created = translate("Could not create file " + file) { file.createNewFile() } - if(created || file.isDirectory) + val absFile = file.getAbsoluteFile + createDirectory(absFile.getParentFile) + val created = translate("Could not create file " + absFile) { absFile.createNewFile() } + if(created || absFile.isDirectory) () - else if(setModified && !file.setLastModified(System.currentTimeMillis)) - error("Could not update last modified time for file " + file) + else if(setModified && !absFile.setLastModified(System.currentTimeMillis)) + error("Could not update last modified time for file " + absFile) } def createDirectories(dirs: Traversable[File]): Unit = dirs.foreach(createDirectory)