Index: net/base/net_util.cc |
diff --git a/net/base/net_util.cc b/net/base/net_util.cc |
index 2ba3b4688f1dc3718c58f0d03aa52ba211edebb3..21fb07f0a4b9a53f7da3d2b161cf744f1ea8be0f 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; |