Cleanup fallthrough warning + clang-format parseCommonTargets function

v0.27.3
Luis Diaz Mas 7 years ago committed by Luis Díaz Más
parent 0d9065274e
commit 6e244f31d3

@ -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 target = 0;
int all = Params::ctExif | Params::ctIptc | Params::ctComment | Params::ctXmp;
int extra = Params::ctXmpSidecar|Params::ctExif|Params::ctIptc|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 ;
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':
{
case 'p': {
if (strcmp(action.c_str(), "extract") == 0) {
i += (size_t) parsePreviewNumbers(Params::instance().previewNumbers_, optarg, (int) i + 1);
i += (size_t)parsePreviewNumbers(Params::instance().previewNumbers_, optarg, (int)i + 1);
target |= Params::ctPreview;
break;
}
// fallthrough
printUnrecognizedArgument(optarg[i], action);
rc = -1;
break;
}
default:
std::cerr << Params::instance().progname() << ": " << _("Unrecognized ")
<< action << " " << _("target") << " `" << optarg[i] << "'\n";
printUnrecognizedArgument(optarg[i], action);
rc = -1;
break;
}
}
return rc ? rc : target;
} // parseCommonTargets
}
int parsePreviewNumbers(Params::PreviewNumbers& previewNumbers,
const std::string& optarg,

Loading…
Cancel
Save