summaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorTim Almdal <tnalmdal@shaw.ca>2009-12-30 15:33:22 -0800
committerTim Almdal <tnalmdal@shaw.ca>2009-12-30 15:33:22 -0800
commit7af844606d79d1f987c6d754f5c5db64d86acc47 (patch)
treef6ad08028dcd101cda12e55a68c48632c4877e59 /modules
parent399c5c21f6da5dc02e55be6d5b453b43ae4cf158 (diff)
The problem occurs because the square brackets are treated as special characters in the glob to find the children. This patch escapes the square brackets. Fixes ticket #855
Diffstat (limited to 'modules')
-rw-r--r--modules/server_add/controllers/server_add.php4
1 files changed, 3 insertions, 1 deletions
diff --git a/modules/server_add/controllers/server_add.php b/modules/server_add/controllers/server_add.php
index 6ff00812..f6e3a4dd 100644
--- a/modules/server_add/controllers/server_add.php
+++ b/modules/server_add/controllers/server_add.php
@@ -42,13 +42,15 @@ class Server_Add_Controller extends Admin_Controller {
// Make a tree with the parents back up to the authorized path, and all the children under the
// current path.
+ Kohana_Log::add("error", $path);
if (server_add::is_valid_path($path)) {
$tree->parents[] = $path;
while (server_add::is_valid_path(dirname($tree->parents[0]))) {
array_unshift($tree->parents, dirname($tree->parents[0]));
}
- foreach (glob("$path/*") as $file) {
+ $glob_path = str_replace(array("{", "}", "[", "]"), array("\{", "\}", "\[", "\]"), $path);
+ foreach (glob("$glob_path/*") as $file) {
if (!is_readable($file)) {
continue;
}