Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(162)

Side by Side Diff: trunk/src/chrome/browser/download/download_extensions.cc

Issue 474483002: Revert 289312 "Move StringToUpperASCII and LowerCaseEqualsASCII ..." (Closed) Base URL: svn://svn.chromium.org/chrome/
Patch Set: Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include <set> 5 #include <set>
6 #include <string> 6 #include <string>
7 7
8 #include "chrome/browser/download/download_extensions.h" 8 #include "chrome/browser/download/download_extensions.h"
9 9
10 #include "base/strings/string_util.h" 10 #include "base/strings/string_util.h"
(...skipping 204 matching lines...) Expand 10 before | Expand all | Expand 10 after
215 std::string ascii_extension = base::UTF16ToASCII(extension); 215 std::string ascii_extension = base::UTF16ToASCII(extension);
216 #elif defined(OS_POSIX) 216 #elif defined(OS_POSIX)
217 std::string ascii_extension = extension; 217 std::string ascii_extension = extension;
218 #endif 218 #endif
219 219
220 // Strip out leading dot if it's still there 220 // Strip out leading dot if it's still there
221 if (ascii_extension[0] == base::FilePath::kExtensionSeparator) 221 if (ascii_extension[0] == base::FilePath::kExtensionSeparator)
222 ascii_extension.erase(0, 1); 222 ascii_extension.erase(0, 1);
223 223
224 for (size_t i = 0; i < arraysize(g_executables); ++i) { 224 for (size_t i = 0; i < arraysize(g_executables); ++i) {
225 if (base::LowerCaseEqualsASCII(ascii_extension, 225 if (LowerCaseEqualsASCII(ascii_extension, g_executables[i].extension))
226 g_executables[i].extension))
227 return g_executables[i].level; 226 return g_executables[i].level;
228 } 227 }
229 return NOT_DANGEROUS; 228 return NOT_DANGEROUS;
230 } 229 }
231 230
232 static const char* kExecutableWhiteList[] = { 231 static const char* kExecutableWhiteList[] = {
233 // JavaScript is just as powerful as EXE. 232 // JavaScript is just as powerful as EXE.
234 "text/javascript", 233 "text/javascript",
235 "text/javascript;version=*", 234 "text/javascript;version=*",
236 "text/html", 235 "text/html",
(...skipping 20 matching lines...) Expand all
257 for (size_t i = 0; i < arraysize(kExecutableBlackList); ++i) { 256 for (size_t i = 0; i < arraysize(kExecutableBlackList); ++i) {
258 if (net::MatchesMimeType(kExecutableBlackList[i], mime_type)) 257 if (net::MatchesMimeType(kExecutableBlackList[i], mime_type))
259 return false; 258 return false;
260 } 259 }
261 // We consider only other application types to be executable. 260 // We consider only other application types to be executable.
262 return net::MatchesMimeType("application/*", mime_type); 261 return net::MatchesMimeType("application/*", mime_type);
263 } 262 }
264 263
265 264
266 } // namespace download_util 265 } // namespace download_util
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698