Patrick Steinhardt <ps@xxxxxx> writes: > if (sb.buf[0] == '-') { > + const char *argv[2] = { sb.buf, NULL }; > + > if (!strcmp(sb.buf, "--")) { > seen_dashdash = 1; > break; > } > > - die("options not supported in --stdin mode"); > + if (handle_revision_pseudo_opt(revs, argv, flags)) > + continue; > + > + die(_("option '%s' not supported in --stdin mode"), sb.buf); > } The reason why we had the double-dash checking inside this block is because we rejected any dashed options other than double-dash, but with this step, that is no longer true, so it may make more sense to move the "seen_dashdash" code outside the block. Also unlike the command line options that allows "--end-of-options" marker to allow tweaking how a failing handle_revision_arg() call is handled, this codepath does not seem to have any matching provision. In the original code, which did not accept any options, it was perfectly understandable that it was unaware of "--end-of-options", but now we do allow dashed options, shouldn't we be supporting it here, too? Thanks.