Rubén Justo <rjusto@xxxxxxxxx> writes: > struct rev_info *revs, struct s > revarg_opt |= REVARG_CANNOT_BE_FILENAME; > for (left = i = 1; i < argc; i++) { > const char *arg = argv[i]; > - if (!seen_end_of_options && *arg == '-') { > + if (!seen_end_of_options && *arg == '-' && > !strchr(".^~:@", arg[1])) { Yuck. I really didn't want to see that strchr() or any other logic that _knows_ what letter is allowed after a "rev". It will be impossible to keep it in sync with the real code paths that needs to know and parses these syntactical constructs, and folks new to the codebase will never be able to tell at a first glance if the above is sufficient (or what the strchr() is doing).