diff --git a/plugins/libkolab/lib/kolab_storage_folder.php b/plugins/libkolab/lib/kolab_storage_folder.php index d0695cb2..cba8c5ca 100644 --- a/plugins/libkolab/lib/kolab_storage_folder.php +++ b/plugins/libkolab/lib/kolab_storage_folder.php @@ -594,7 +594,7 @@ class kolab_storage_folder extends kolab_storage_folder_api */ public function save(&$object, $type = null, $uid = null) { - if (!$this->valid) { + if (!$this->valid && empty($object)) { return false; } diff --git a/plugins/libkolab/tests/kolab_storage_folder.php b/plugins/libkolab/tests/kolab_storage_folder.php index 62d05658..273ece26 100644 --- a/plugins/libkolab/tests/kolab_storage_folder.php +++ b/plugins/libkolab/tests/kolab_storage_folder.php @@ -177,6 +177,11 @@ class kolab_storage_folder_test extends PHPUnit_Framework_TestCase $this->markTestSkipped('No Kolab support'); } + $folder = new kolab_storage_folder('Contacts', 'contact'); + + $saved = $folder->save(null, 'contact'); + $this->assertFalse($saved); + $contact = array( 'name' => 'FN', 'surname' => 'Last', @@ -187,7 +192,6 @@ class kolab_storage_folder_test extends PHPUnit_Framework_TestCase 'organization' => 'Company A.G.' ); - $folder = new kolab_storage_folder('Contacts', 'contact'); $saved = $folder->save($contact, 'contact'); $this->assertTrue((bool)$saved); }