From: <var...@us...> - 2015-09-22 15:51:50
|
Revision: 9730 http://sourceforge.net/p/phpwiki/code/9730 Author: vargenau Date: 2015-09-22 15:51:48 +0000 (Tue, 22 Sep 2015) Log Message: ----------- Upload: replace multiple spaces by single space Modified Paths: -------------- trunk/lib/plugin/UpLoad.php trunk/lib/stdlib.php Modified: trunk/lib/plugin/UpLoad.php =================================================================== --- trunk/lib/plugin/UpLoad.php 2015-09-22 15:27:07 UTC (rev 9729) +++ trunk/lib/plugin/UpLoad.php 2015-09-22 15:51:48 UTC (rev 9730) @@ -129,7 +129,7 @@ $userfile = $request->getUploadedFile('userfile'); if ($userfile) { $userfile_name = $userfile->getName(); - $userfile_name = trim(basename($userfile_name)); + $userfile_name = basename($userfile_name); if (UPLOAD_USERDIR) { $username = $request->_user->_userid; $file_dir .= $username; @@ -197,7 +197,7 @@ $message->pushContent(HTML::div(array('class' => 'feedback'), HTML::p(_("File successfully uploaded.")), HTML::p($link), - HTML::p(_("Note: some forbidden characters in filename have been replaced by dash.")))); + HTML::p(_("Note: filename was sanified: spaces from beginning and end removed, multiple spaces replaced by one, forbidden characters replaced by dash.")))); } else { $message->pushContent(HTML::div(array('class' => 'feedback'), HTML::p(_("File successfully uploaded.")), Modified: trunk/lib/stdlib.php =================================================================== --- trunk/lib/stdlib.php 2015-09-22 15:27:07 UTC (rev 9729) +++ trunk/lib/stdlib.php 2015-09-22 15:51:48 UTC (rev 9730) @@ -2113,10 +2113,15 @@ } /** - * Sanify filename: replace all disallowed characters with dashes + * Sanify filename: + * - remove spaces from the beginning and end + * - replace multiple spaces by single space + * - replace all disallowed characters with dashes */ function sanify_filename($filename) { + $filename = trim($filename); + $filename = preg_replace('!\s+!', ' ', $filename); return mb_ereg_replace('[^\w\. \-]', '-', $filename); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |