summaryrefslogtreecommitdiffstats
path: root/net/base/net_util.cc
diff options
context:
space:
mode:
Diffstat (limited to 'net/base/net_util.cc')
-rw-r--r--net/base/net_util.cc9
1 files changed, 9 insertions, 0 deletions
diff --git a/net/base/net_util.cc b/net/base/net_util.cc
index 2ba3b46..21fb07f 100644
--- a/net/base/net_util.cc
+++ b/net/base/net_util.cc
@@ -1505,6 +1505,15 @@ FilePath GenerateFileName(const GURL& url,
#else
FilePath generated_name(base::SysWideToNativeMB(UTF16ToWide(file_name)));
#endif
+
+#if defined(OS_CHROMEOS)
+ // When doing file manager operations on ChromeOS, the file paths get
+ // normalized in WebKit layer, so let's ensure downloaded files have
+ // normalized names. Otherwise, we won't be able to handle files with NFD
+ // utf8 encoded characters in name.
+ file_util::NormalizeFileNameEncoding(&generated_name);
+#endif
+
DCHECK(!generated_name.empty());
return generated_name;