diff --git a/module/extension/model.php b/module/extension/model.php
index 3bbe421a71..d1389dddec 100644
--- a/module/extension/model.php
+++ b/module/extension/model.php
@@ -452,7 +452,8 @@ class extensionModel extends model
}
else
{
- if(!@mkdir($path, 0755, true))
+ $parentDir = mb_substr($path, 0, strripos($path, '/'));
+ if(!is_writable($parentDir) or !@mkdir($path, 0777, true))
{
$return->errors .= sprintf($this->lang->extension->errorTargetPathNotExists, $path) . '
';
$return->mkdirCommands .= "mkdir -p $path
";