From 6e244f31d3a85cee4eae66f6b1cc01da263d1b7d Mon Sep 17 00:00:00 2001 From: Luis Diaz Mas Date: Thu, 23 Aug 2018 19:12:56 +0200 Subject: [PATCH] Cleanup fallthrough warning + clang-format parseCommonTargets function --- src/exiv2.cpp | 90 ++++++++++++++++++++++++++++++++------------------- 1 file changed, 57 insertions(+), 33 deletions(-) diff --git a/src/exiv2.cpp b/src/exiv2.cpp index 272bf09c..a0fb063b 100644 --- a/src/exiv2.cpp +++ b/src/exiv2.cpp @@ -1133,49 +1133,73 @@ namespace { return true; } // parseTime - int parseCommonTargets(const std::string& optarg, - const std::string& action) + void printUnrecognizedArgument(const char argc, const std::string& action) + { + std::cerr << Params::instance().progname() << ": " << _("Unrecognized ") + << action << " " << _("target") << " `" << argc << "'\n"; + } + + int parseCommonTargets(const std::string& optarg, const std::string& action) { - int rc = 0; + int rc = 0; int target = 0; - int all = Params::ctExif | Params::ctIptc | Params::ctComment | Params::ctXmp; - int extra = Params::ctXmpSidecar|Params::ctExif|Params::ctIptc|Params::ctXmp; + int all = Params::ctExif | Params::ctIptc | Params::ctComment | Params::ctXmp; + int extra = Params::ctXmpSidecar | Params::ctExif | Params::ctIptc | Params::ctXmp; for (size_t i = 0; rc == 0 && i < optarg.size(); ++i) { switch (optarg[i]) { - case 'e': target |= Params::ctExif; break; - case 'i': target |= Params::ctIptc; break; - case 'x': target |= Params::ctXmp; break; - case 'c': target |= Params::ctComment; break; - case 't': target |= Params::ctThumb; break; - case 'C': target |= Params::ctIccProfile; break; - case 'I': target |= Params::ctIptcRaw;break; - case '-': target |= Params::ctStdInOut;break; - case 'a': target |= all ; break; - case 'X': target |= extra ; // -eX - if ( i > 0 ) { // -eXX or -iXX - target |= Params::ctXmpRaw ; - target &= ~extra; // turn off those bits - } - break; + case 'e': + target |= Params::ctExif; + break; + case 'i': + target |= Params::ctIptc; + break; + case 'x': + target |= Params::ctXmp; + break; + case 'c': + target |= Params::ctComment; + break; + case 't': + target |= Params::ctThumb; + break; + case 'C': + target |= Params::ctIccProfile; + break; + case 'I': + target |= Params::ctIptcRaw; + break; + case '-': + target |= Params::ctStdInOut; + break; + case 'a': + target |= all; + break; + case 'X': + target |= extra; // -eX + if (i > 0) { // -eXX or -iXX + target |= Params::ctXmpRaw; + target &= ~extra; // turn off those bits + } + break; - case 'p': - { - if (strcmp(action.c_str(), "extract") == 0) { - i += (size_t) parsePreviewNumbers(Params::instance().previewNumbers_, optarg, (int) i + 1); - target |= Params::ctPreview; + case 'p': { + if (strcmp(action.c_str(), "extract") == 0) { + i += (size_t)parsePreviewNumbers(Params::instance().previewNumbers_, optarg, (int)i + 1); + target |= Params::ctPreview; + break; + } + printUnrecognizedArgument(optarg[i], action); + rc = -1; break; } - // fallthrough - } - default: - std::cerr << Params::instance().progname() << ": " << _("Unrecognized ") - << action << " " << _("target") << " `" << optarg[i] << "'\n"; - rc = -1; - break; + default: + printUnrecognizedArgument(optarg[i], action); + rc = -1; + break; } } return rc ? rc : target; - } // parseCommonTargets + } int parsePreviewNumbers(Params::PreviewNumbers& previewNumbers, const std::string& optarg,