Index: content/browser/renderer_host/pepper/pepper_file_system_browser_host.cc |
diff --git a/content/browser/renderer_host/pepper/pepper_file_system_browser_host.cc b/content/browser/renderer_host/pepper/pepper_file_system_browser_host.cc |
index 0401ae220667b602266d4679f99cf58687dc974e..190d8219dce98baa40eb6a2db77f2dbce3eeaf50 100644 |
--- a/content/browser/renderer_host/pepper/pepper_file_system_browser_host.cc |
+++ b/content/browser/renderer_host/pepper/pepper_file_system_browser_host.cc |
@@ -485,13 +485,15 @@ std::string PepperFileSystemBrowserHost::GeneratePluginId( |
// types). If we bring this API to stable, we might have to make it more |
// general. |
- if (!net::IsMimeType(mime_type)) |
+ std::string top_level_type; |
+ std::string subtype; |
+ if (!net::ParseMimeTypeWithoutParameter( |
+ mime_type, &top_level_type, &subtype) || |
+ !net::IsValidTopLevelMimeType(top_level_type)) |
return std::string(); |
- std::string output = mime_type; |
// Replace a slash used for type/subtype separator with an underscore. |
- // NOTE: This assumes there is only one slash in the MIME type. |
- ReplaceFirstSubstringAfterOffset(&output, 0, "/", "_"); |
+ std::string output = top_level_type + "_" + subtype; |
// Verify |output| contains only alphabets, digits, or "._-". |
for (std::string::const_iterator it = output.begin(); |