From 13d2c5e926e71a1ef2ef0bce96eb5a6f627cf88f Mon Sep 17 00:00:00 2001
From: Brice Maron <brice@bmaron.net>
Date: Wed, 2 Nov 2011 20:26:17 +0100
Subject: [PATCH] Fix bug with spaces in file names.

---
 files/js/files.js             | 3 ++-
 files/templates/part.list.php | 2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/files/js/files.js b/files/js/files.js
index 593eeafde85..635266164c1 100644
--- a/files/js/files.js
+++ b/files/js/files.js
@@ -2,6 +2,7 @@ $(document).ready(function() {
 	$('#fileList tr').each(function(){
 		//little hack to set unescape filenames in attribute
 		$(this).attr('data-file',unescape($(this).data('file')));
+		$(this).data('file',unescape($(this).data('file')));
 	});
 		
 	if($('tr[data-file]').length==0){
@@ -69,7 +70,7 @@ $(document).ready(function() {
 			}
 			procesSelection();
 		} else {
-			var filename=$(this).parent().parent().data('file');
+			var filename=$(this).parent().parent().attr('data-file');
 			if(!FileList.isLoading(filename)){
 				var mime=$(this).parent().parent().data('mime');
 				var type=$(this).parent().parent().data('type');
diff --git a/files/templates/part.list.php b/files/templates/part.list.php
index b0ef73c4062..46830ba3a37 100644
--- a/files/templates/part.list.php
+++ b/files/templates/part.list.php
@@ -5,7 +5,7 @@
 			$relative_modified_date = relative_modified_date($file['mtime']);
 			$relative_date_color = round((time()-$file['mtime'])/60/60/24*14); // the older the file, the brighter the shade of grey; days*14
 			if($relative_date_color>200) $relative_date_color = 200; ?>
-			<tr data-file="<?php echo urlencode($file['name']);?>" data-type="<?php echo ($file['type'] == 'dir')?'dir':'file'?>" data-mime="<?php echo $file['mime']?>" data-size='<?php echo $file['size'];?>'>
+			<tr data-file="<?php echo str_replace('+','%20',urlencode($file['name']));?>" data-type="<?php echo ($file['type'] == 'dir')?'dir':'file'?>" data-mime="<?php echo $file['mime']?>" data-size='<?php echo $file['size'];?>'>
 				<td class="filename svg" style="background-image:url(<?php if($file['type'] == 'dir') echo mimetype_icon('dir'); else echo mimetype_icon($file['mime']); ?>)">
 					<?php if(!isset($_['readonly']) || !$_['readonly']) { ?><input type="checkbox" /><?php } ?>
 					<a class="name" href="<?php if($file['type'] == 'dir') echo $_['baseURL'].$file['directory'].'/'.$file['name']; else echo $_['downloadURL'].urlencode($file['directory']).'/'.urlencode($file['name']); ?>" title="">
-- 
GitLab