From fc5cefc7766fd5d1e2699c12184147ffe17afc9c Mon Sep 17 00:00:00 2001
From: Cristiano Magro <cristiano.magro@vola.it>
Date: Tue, 27 Aug 2019 18:04:36 +0200
Subject: [PATCH] Try to fix problema UTF-8 con carattere non stampabile

---
 tests/Vola/UploadFile/FilenameTest.php |    3 +++
 src/Vola/UploadFile/Filename.php       |    4 +++-
 2 files changed, 6 insertions(+), 1 deletions(-)

diff --git a/src/Vola/UploadFile/Filename.php b/src/Vola/UploadFile/Filename.php
index 78eff8c..62528fe 100644
--- a/src/Vola/UploadFile/Filename.php
+++ b/src/Vola/UploadFile/Filename.php
@@ -25,12 +25,14 @@
 
     public function filter($filename, $beautify = true)
     {
+
         // sanitize filename
         $filename = preg_replace(
             '~
         [<>:"/\\|?*]|            # file system reserved https://en.wikipedia.org/wiki/Filename#Reserved_characters_and_words
         [\x00-\x1F]|             # control characters http://msdn.microsoft.com/en-us/library/windows/desktop/aa365247%28v=vs.85%29.aspx
-        [\x7F\xA0\xAD]|          # non-printing characters DEL, NO-BREAK SPACE, SOFT HYPHEN
+//        [\x7F\xA0\xAD]|          # non-printing characters DEL, NO-BREAK SPACE, SOFT HYPHEN
+        [\x7F\xAD]|          # non-printing characters DEL, NO-BREAK SPACE, SOFT HYPHEN
         [#\[\]@!$&\'()+,;=]|     # URI reserved https://tools.ietf.org/html/rfc3986#section-2.2
         [{}^\~`]                 # URL unsafe characters https://www.ietf.org/rfc/rfc1738.txt
         ~x',
diff --git a/tests/Vola/UploadFile/FilenameTest.php b/tests/Vola/UploadFile/FilenameTest.php
index 461c7c8..702f7f4 100644
--- a/tests/Vola/UploadFile/FilenameTest.php
+++ b/tests/Vola/UploadFile/FilenameTest.php
@@ -27,6 +27,9 @@
             ['../ciCcio-- a.zip', 'ciccio-a.zip'],
             ['../../ciccio.ZIP.zip', 'ciccio.zip.zip'],
             ['ciccioò.zip', 'ciccioò.zip'],
+            ['ciccioà.zip', 'ciccioà.zip'],
+            ['à.zip', 'à.zip'],
+            ['àèéòùì', 'àèéòùì'],
             ['', ''],
         ];
     }

--
Gitblit v1.8.0