From 258ad38fd3c1e3cdc4ec20238b166e78c334b814 Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Wed, 10 Apr 2013 13:45:36 +0200 Subject: [PATCH] Fix touch for creating new files --- lib/files/storage/local.php | 2 +- tests/lib/files/storage/storage.php | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/files/storage/local.php b/lib/files/storage/local.php index c3a643fe98..81e32587fc 100644 --- a/lib/files/storage/local.php +++ b/lib/files/storage/local.php @@ -95,7 +95,7 @@ class Local extends \OC\Files\Storage\Common{ // sets the modification time of the file to the given value. // If mtime is nil the current time is set. // note that the access time of the file always changes to the current time. - if(!$this->isUpdatable($path)) { + if($this->file_exists($path) and !$this->isUpdatable($path)) { return false; } if(!is_null($mtime)) { diff --git a/tests/lib/files/storage/storage.php b/tests/lib/files/storage/storage.php index 3d68efea5f..0e22f26ae8 100644 --- a/tests/lib/files/storage/storage.php +++ b/tests/lib/files/storage/storage.php @@ -257,4 +257,10 @@ abstract class Storage extends \PHPUnit_Framework_TestCase { $content = stream_get_contents($fh); $this->assertEquals(file_get_contents($textFile), $content); } + + public function testTouchCreateFile(){ + $this->assertFalse($this->instance->file_exists('foo')); + $this->instance->touch('foo'); + $this->assertTrue($this->instance->file_exists('foo')); + } }