diff --git a/apps/files/templates/part.list.php b/apps/files/templates/part.list.php
index 59267690e66585b8dd88637436dff55fc4619fa3..1719d25e660103893c20d07fb3cf85e8fb4053e8 100644
--- a/apps/files/templates/part.list.php
+++ b/apps/files/templates/part.list.php
@@ -9,9 +9,9 @@
 	// the older the file, the brighter the shade of grey; days*14
 	$relative_date_color = round((time()-$file['mtime'])/60/60/24*14);
 	if($relative_date_color>200) $relative_date_color = 200;
-	$name = str_replace('+', '%20', urlencode($file['name']));
+	$name = rawurlencode($file['name']);
 	$name = str_replace('%2F', '/', $name);
-	$directory = str_replace('+', '%20', urlencode($file['directory']));
+	$directory = rawurlencode($file['directory']);
 	$directory = str_replace('%2F', '/', $directory); ?>
 	<tr data-id="<?php p($file['fileid']); ?>"
 		data-file="<?php p($name);?>"