diff --git a/apps/files_trashbin/index.php b/apps/files_trashbin/index.php
index a32b7414ac6a1b5a9a14c56d9753853ce38fb270..6f1c364737e1939ba462bc7cfa9ace10ca3c68e7 100644
--- a/apps/files_trashbin/index.php
+++ b/apps/files_trashbin/index.php
@@ -101,12 +101,15 @@ $breadcrumbNav->assign('home', OCP\Util::linkTo('files', 'index.php'));
 
 $list = new OCP\Template('files_trashbin', 'part.list', '');
 $list->assign('files', $files);
-$list->assign('baseURL', OCP\Util::linkTo('files_trashbin', 'index.php'). '?dir='.$dir);
-$list->assign('downloadURL', OCP\Util::linkTo('files_trashbin', 'download.php') . '?file='.$dir);
+
+$encodedDir = \OCP\Util::encodePath($dir);
+$list->assign('baseURL', OCP\Util::linkTo('files_trashbin', 'index.php'). '?dir='.$encodedDir);
+$list->assign('downloadURL', OCP\Util::linkTo('files_trashbin', 'download.php') . '?file='.$encodedDir);
 $list->assign('disableSharing', true);
 $list->assign('dirlisting', $dirlisting);
-$tmpl->assign('dirlisting', $dirlisting);
 $list->assign('disableDownloadActions', true);
+
+$tmpl->assign('dirlisting', $dirlisting);
 $tmpl->assign('breadcrumb', $breadcrumbNav->fetchPage());
 $tmpl->assign('fileList', $list->fetchPage());
 $tmpl->assign('files', $files);