diff --git a/files/index.php b/files/index.php
index cca48cb..82027f9 100644
--- a/files/index.php
+++ b/files/index.php
@@ -199,7 +199,7 @@
                     notify(get_string('uploadedfile'));
                 }
                 // um will take care of error reporting.
-                displaydir($wdir);
+                displaydir($wdir, $basedir);
             } else {
                 $upload_max_filesize = get_max_upload_file_size($CFG->maxbytes);
                 $filesize = display_size($upload_max_filesize);
@@ -248,7 +248,7 @@
                     }
                 }
                 clearfilelist();
-                displaydir($wdir);
+                displaydir($wdir, $basedir);
                 html_footer();
 
             } else {
@@ -257,7 +257,7 @@
                 if (setfilelist($_POST)) {
                     notify(get_string('deletecheckwarning').':');
                     print_simple_box_start("center");
-                    printfilelist($USER->filelist);
+                    printfilelist($USER->filelist, $basedir);
                     print_simple_box_end();
                     echo "<br />";
 
@@ -275,7 +275,7 @@
                         print_continue("index.php?id=$id&amp;wdir=$wdir&amp;action=cancel&amp;choose=$choose");
                     }
                 } else {
-                    displaydir($wdir);
+                    displaydir($wdir, $basedir);
                 }
                 html_footer();
             }
@@ -290,7 +290,7 @@
                 print_string("selectednowmove", "moodle", $count);
                 echo "</p>";
             }
-            displaydir($wdir);
+            displaydir($wdir, $basedir);
             html_footer();
             break;
 
@@ -307,7 +307,7 @@
                 }
             }
             clearfilelist();
-            displaydir($wdir);
+            displaydir($wdir, $basedir);
             html_footer();
             break;
 
@@ -324,7 +324,7 @@
                     require_once($CFG->dirroot.'/mod/resource/lib.php');
                     resource_renamefiles($course, $wdir, $oldname, $name);
                 }
-                displaydir($wdir);
+                displaydir($wdir, $basedir);
 
             } else {
                 $strrename = get_string("rename");
@@ -369,7 +369,7 @@
                 } else if (! make_upload_directory("$course->id$wdir/$name")) {
                     echo "Error: could not create $name";
                 }
-                displaydir($wdir);
+                displaydir($wdir, $basedir);
 
             } else {
                 $strcreate = get_string("create");
@@ -411,7 +411,7 @@
                 $text = preg_replace('/\x0D/', '', $text);  // http://moodle.org/mod/forum/discuss.php?d=38860
                 fputs($fileptr, stripslashes($text));
                 fclose($fileptr);
-                displaydir($wdir);
+                displaydir($wdir, $basedir);
 
             } else {
                 $streditfile = get_string("edit", "", "<b>$file</b>");
@@ -478,7 +478,7 @@
                 }
 
                 clearfilelist();
-                displaydir($wdir);
+                displaydir($wdir, $basedir);
 
             } else {
                 html_header($course, $wdir, "form.name");
@@ -486,7 +486,7 @@
                 if (setfilelist($_POST)) {
                     echo "<p align=\"center\">".get_string("youareabouttocreatezip").":</p>";
                     print_simple_box_start("center");
-                    printfilelist($USER->filelist);
+                    printfilelist($USER->filelist, $basedir);
                     print_simple_box_end();
                     echo "<br />";
                     echo "<p align=\"center\">".get_string("whattocallzip")."</p>";
@@ -514,7 +514,7 @@
                     echo "</form>";
                     echo "</td></tr></table>";
                 } else {
-                    displaydir($wdir);
+                    displaydir($wdir, $basedir);
                     clearfilelist();
                 }
             }
@@ -546,7 +546,7 @@
                 echo "</form>";
                 echo "</div>";
             } else {
-                displaydir($wdir);
+                displaydir($wdir, $basedir);
             }
             html_footer();
             break;
@@ -596,7 +596,7 @@
                 echo "</form>";
                 echo "</center>";
             } else {
-                displaydir($wdir);
+                displaydir($wdir, $basedir);
             }
             html_footer();
             break;
@@ -615,7 +615,7 @@
                                 $restore_path."?id=".$id."&amp;file=".cleardoubleslashes($id.$wdir."/".$file)."&amp;method=manual",
                                 "index.php?id=$id&amp;wdir=$wdir&amp;action=cancel");
             } else {
-                displaydir($wdir);
+                displaydir($wdir, $basedir);
             }
             html_footer();
             break;
@@ -625,7 +625,7 @@
 
         default:
             html_header($course, $wdir);
-            displaydir($wdir);
+            displaydir($wdir, $basedir);
             html_footer();
             break;
 }
@@ -659,8 +659,8 @@ function clearfilelist() {
 }
 
 
-function printfilelist($filelist) {
-    global $CFG, $basedir;
+function printfilelist($filelist, $basedir) {
+    global $CFG;
 
     $strfolder = get_string("folder");
     $strfile   = get_string("file");
@@ -675,7 +675,7 @@ function printfilelist($filelist) {
                     $subfilelist[] = $file."/".$subfile;
                 }
             }
-            printfilelist($subfilelist);
+            printfilelist($subfilelist, $basedir);
 
         } else {
             $icon = mimeinfo("icon", $file);
@@ -692,10 +692,9 @@ function print_cell($alignment='center', $text='&nbsp;', $class='') {
     echo '<td align="'.$alignment.'" style="white-space:nowrap "'.$class.'>'.$text.'</td>';
 }
 
-function displaydir ($wdir) {
+function displaydir ($wdir, $basedir) {
 //  $wdir == / or /a or /a/b/c/d  etc
 
-    global $basedir;
     global $id;
     global $USER, $CFG;
     global $choose;
