|
8 | 8 | #include <string.h> |
9 | 9 |
|
10 | 10 | #include <algorithm> |
| 11 | +#include <string_view> |
11 | 12 |
|
12 | 13 | #include "base/containers/fixed_flat_set.h" |
13 | 14 | #include "base/files/file_path.h" |
14 | 15 | #include "base/logging.h" |
15 | 16 | #include "base/notreached.h" |
16 | | -#include "base/strings/string_piece.h" |
17 | 17 | #include "base/strings/string_util.h" |
18 | 18 | #include "base/strings/utf_string_conversions.h" |
19 | 19 |
|
@@ -398,64 +398,64 @@ Compression GetCompressionMethod(const base::FilePath& path) { |
398 | 398 | if (ext.empty()) |
399 | 399 | return kDeflated; |
400 | 400 |
|
401 | | - using StringPiece = base::FilePath::StringPieceType; |
402 | 401 |
|
403 | 402 | // Skip the leading dot. |
404 | | - StringPiece ext_without_dot = ext; |
| 403 | + base::FilePath::StringPieceType ext_without_dot = ext; |
405 | 404 | DCHECK_EQ(ext_without_dot.front(), FILE_PATH_LITERAL('.')); |
406 | 405 | ext_without_dot.remove_prefix(1); |
407 | 406 |
|
408 | 407 | // Well known filename extensions of files that a likely to be already |
409 | 408 | // compressed. The extensions are in lower case without the leading dot. |
410 | | - static constexpr auto kExts = base::MakeFixedFlatSet<StringPiece>({ |
411 | | - FILE_PATH_LITERAL("3g2"), // |
412 | | - FILE_PATH_LITERAL("3gp"), // |
413 | | - FILE_PATH_LITERAL("7z"), // |
414 | | - FILE_PATH_LITERAL("7zip"), // |
415 | | - FILE_PATH_LITERAL("aac"), // |
416 | | - FILE_PATH_LITERAL("avi"), // |
417 | | - FILE_PATH_LITERAL("bz"), // |
418 | | - FILE_PATH_LITERAL("bz2"), // |
419 | | - FILE_PATH_LITERAL("crx"), // |
420 | | - FILE_PATH_LITERAL("gif"), // |
421 | | - FILE_PATH_LITERAL("gz"), // |
422 | | - FILE_PATH_LITERAL("jar"), // |
423 | | - FILE_PATH_LITERAL("jpeg"), // |
424 | | - FILE_PATH_LITERAL("jpg"), // |
425 | | - FILE_PATH_LITERAL("lz"), // |
426 | | - FILE_PATH_LITERAL("m2v"), // |
427 | | - FILE_PATH_LITERAL("m4p"), // |
428 | | - FILE_PATH_LITERAL("m4v"), // |
429 | | - FILE_PATH_LITERAL("mng"), // |
430 | | - FILE_PATH_LITERAL("mov"), // |
431 | | - FILE_PATH_LITERAL("mp2"), // |
432 | | - FILE_PATH_LITERAL("mp3"), // |
433 | | - FILE_PATH_LITERAL("mp4"), // |
434 | | - FILE_PATH_LITERAL("mpe"), // |
435 | | - FILE_PATH_LITERAL("mpeg"), // |
436 | | - FILE_PATH_LITERAL("mpg"), // |
437 | | - FILE_PATH_LITERAL("mpv"), // |
438 | | - FILE_PATH_LITERAL("ogg"), // |
439 | | - FILE_PATH_LITERAL("ogv"), // |
440 | | - FILE_PATH_LITERAL("png"), // |
441 | | - FILE_PATH_LITERAL("qt"), // |
442 | | - FILE_PATH_LITERAL("rar"), // |
443 | | - FILE_PATH_LITERAL("taz"), // |
444 | | - FILE_PATH_LITERAL("tb2"), // |
445 | | - FILE_PATH_LITERAL("tbz"), // |
446 | | - FILE_PATH_LITERAL("tbz2"), // |
447 | | - FILE_PATH_LITERAL("tgz"), // |
448 | | - FILE_PATH_LITERAL("tlz"), // |
449 | | - FILE_PATH_LITERAL("tz"), // |
450 | | - FILE_PATH_LITERAL("tz2"), // |
451 | | - FILE_PATH_LITERAL("vob"), // |
452 | | - FILE_PATH_LITERAL("webm"), // |
453 | | - FILE_PATH_LITERAL("wma"), // |
454 | | - FILE_PATH_LITERAL("wmv"), // |
455 | | - FILE_PATH_LITERAL("xz"), // |
456 | | - FILE_PATH_LITERAL("z"), // |
457 | | - FILE_PATH_LITERAL("zip"), // |
458 | | - }); |
| 409 | + static constexpr auto kExts = |
| 410 | + base::MakeFixedFlatSet<base::FilePath::StringPieceType>({ |
| 411 | + FILE_PATH_LITERAL("3g2"), // |
| 412 | + FILE_PATH_LITERAL("3gp"), // |
| 413 | + FILE_PATH_LITERAL("7z"), // |
| 414 | + FILE_PATH_LITERAL("7zip"), // |
| 415 | + FILE_PATH_LITERAL("aac"), // |
| 416 | + FILE_PATH_LITERAL("avi"), // |
| 417 | + FILE_PATH_LITERAL("bz"), // |
| 418 | + FILE_PATH_LITERAL("bz2"), // |
| 419 | + FILE_PATH_LITERAL("crx"), // |
| 420 | + FILE_PATH_LITERAL("gif"), // |
| 421 | + FILE_PATH_LITERAL("gz"), // |
| 422 | + FILE_PATH_LITERAL("jar"), // |
| 423 | + FILE_PATH_LITERAL("jpeg"), // |
| 424 | + FILE_PATH_LITERAL("jpg"), // |
| 425 | + FILE_PATH_LITERAL("lz"), // |
| 426 | + FILE_PATH_LITERAL("m2v"), // |
| 427 | + FILE_PATH_LITERAL("m4p"), // |
| 428 | + FILE_PATH_LITERAL("m4v"), // |
| 429 | + FILE_PATH_LITERAL("mng"), // |
| 430 | + FILE_PATH_LITERAL("mov"), // |
| 431 | + FILE_PATH_LITERAL("mp2"), // |
| 432 | + FILE_PATH_LITERAL("mp3"), // |
| 433 | + FILE_PATH_LITERAL("mp4"), // |
| 434 | + FILE_PATH_LITERAL("mpe"), // |
| 435 | + FILE_PATH_LITERAL("mpeg"), // |
| 436 | + FILE_PATH_LITERAL("mpg"), // |
| 437 | + FILE_PATH_LITERAL("mpv"), // |
| 438 | + FILE_PATH_LITERAL("ogg"), // |
| 439 | + FILE_PATH_LITERAL("ogv"), // |
| 440 | + FILE_PATH_LITERAL("png"), // |
| 441 | + FILE_PATH_LITERAL("qt"), // |
| 442 | + FILE_PATH_LITERAL("rar"), // |
| 443 | + FILE_PATH_LITERAL("taz"), // |
| 444 | + FILE_PATH_LITERAL("tb2"), // |
| 445 | + FILE_PATH_LITERAL("tbz"), // |
| 446 | + FILE_PATH_LITERAL("tbz2"), // |
| 447 | + FILE_PATH_LITERAL("tgz"), // |
| 448 | + FILE_PATH_LITERAL("tlz"), // |
| 449 | + FILE_PATH_LITERAL("tz"), // |
| 450 | + FILE_PATH_LITERAL("tz2"), // |
| 451 | + FILE_PATH_LITERAL("vob"), // |
| 452 | + FILE_PATH_LITERAL("webm"), // |
| 453 | + FILE_PATH_LITERAL("wma"), // |
| 454 | + FILE_PATH_LITERAL("wmv"), // |
| 455 | + FILE_PATH_LITERAL("xz"), // |
| 456 | + FILE_PATH_LITERAL("z"), // |
| 457 | + FILE_PATH_LITERAL("zip"), // |
| 458 | + }); |
459 | 459 |
|
460 | 460 | if (kExts.count(ext_without_dot)) { |
461 | 461 | return kStored; |
|
0 commit comments