diff --git a/lib/filesystem.php b/lib/filesystem.php
index e9d2ae9337210c52dddfd7beb5f78ff6ce56cd59..5af6e0aa54cb8002375ba17651a5f69bf340265f 100644
--- a/lib/filesystem.php
+++ b/lib/filesystem.php
@@ -273,7 +273,12 @@ class OC_Filesystem{
 	*/
 	static private function createStorage($class,$arguments){
 		if(class_exists($class)){
-			return new $class($arguments);
+			try {
+				return new $class($arguments);
+			} catch (Exception $exception) {
+				OC_Log::write('core', $exception->getMessage(), OC_Log::ERROR);
+				return false;
+			}
 		}else{
 			OC_Log::write('core','storage backend '.$class.' not found',OC_Log::ERROR);
 			return false;