aboutsummaryrefslogtreecommitdiffstats
path: root/vendor/sabre/dav/lib/DAV/Server.php
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/sabre/dav/lib/DAV/Server.php')
-rw-r--r--vendor/sabre/dav/lib/DAV/Server.php7
1 files changed, 6 insertions, 1 deletions
diff --git a/vendor/sabre/dav/lib/DAV/Server.php b/vendor/sabre/dav/lib/DAV/Server.php
index 37bf282e8..4c213c1bd 100644
--- a/vendor/sabre/dav/lib/DAV/Server.php
+++ b/vendor/sabre/dav/lib/DAV/Server.php
@@ -1075,7 +1075,12 @@ class Server implements LoggerAwareInterface, EmitterInterface
return false;
}
- $parent = $this->tree->getNodeForPath($dir);
+ try {
+ $parent = $this->tree->getNodeForPath($dir);
+ } catch (Exception\NotFound $e) {
+ throw new Exception\Conflict('Files cannot be created in non-existent collections');
+ }
+
if (!$parent instanceof ICollection) {
throw new Exception\Conflict('Files can only be created as children of collections');
}