aboutsummaryrefslogtreecommitdiffstats
path: root/mod/filestorage.php
diff options
context:
space:
mode:
authorStefan Parviainen <saparvia@caterva.eu>2014-12-30 18:11:45 +0100
committerStefan Parviainen <saparvia@caterva.eu>2014-12-30 18:11:45 +0100
commitf6b16e1d5a3b4faa1a2166e664c402eaa34cef1e (patch)
treece870eb689fbcdc02f5cb2251b81db129d7b5add /mod/filestorage.php
parent8e034a3b6b67a9aaa20fe9db671350e198fe7c42 (diff)
downloadvolse-hubzilla-f6b16e1d5a3b4faa1a2166e664c402eaa34cef1e.tar.gz
volse-hubzilla-f6b16e1d5a3b4faa1a2166e664c402eaa34cef1e.tar.bz2
volse-hubzilla-f6b16e1d5a3b4faa1a2166e664c402eaa34cef1e.zip
Encode URL offered in filestorage. Fixes #780
Diffstat (limited to 'mod/filestorage.php')
-rw-r--r--mod/filestorage.php6
1 files changed, 5 insertions, 1 deletions
diff --git a/mod/filestorage.php b/mod/filestorage.php
index a76a218af..6b731e440 100644
--- a/mod/filestorage.php
+++ b/mod/filestorage.php
@@ -127,10 +127,14 @@ function filestorage_content(&$a) {
$lockstate = (($f['allow_cid'] || $f['allow_gid'] || $f['deny_cid'] || $f['deny_gid']) ? 'lock' : 'unlock');
+ // Encode path that is used for link so it's a valid URL
+ // Keep slashes as slashes, otherwise mod_rewrite doesn't work correctly
+ $encoded_path = str_replace('%2F', '/', rawurlencode($cloudpath));
+
$o = replace_macros(get_markup_template('attach_edit.tpl'), array(
'$header' => t('Edit file permissions'),
'$file' => $f,
- '$cloudpath' => z_root() . '/' . $cloudpath,
+ '$cloudpath' => z_root() . '/' . $encoded_path,
'$parentpath' => $parentpath,
'$uid' => $channel['channel_id'],
'$channelnick' => $channel['channel_address'],