2015-06-19 3:46 GMT+06:00 Junio C Hamano <gitster@xxxxxxxxx>: > I agree with "later -o should override an earlier one", but I do not > necessarily agree with "'-o -' should be --stdout", for a simple > reason that "-o foo" is not "--stdout >foo". > > Perhaps something like this to replace builtin/ part of Alexander's > patch? > > @@ -1337,6 +1342,9 @@ int cmd_format_patch(int argc, const char **argv, const char *prefix) > die (_("--subject-prefix and -k are mutually exclusive.")); > rev.preserve_subject = keep_subject; > > + if (!output_directory && !use_stdout) > + output_directory = config_output_directory; > + > But there is following condition above: if (!use_stdout) output_directory = set_outdir(prefix, output_directory); After which output_directory will be "./" everytime and > > + if (!output_directory && !use_stdout) > + output_directory = config_output_directory; > + > will not work here. What if we remove if (output_directory) {}.... and update it as: if (!use_stdout) { if (!config_output_directory && !output_directory) output_directory = set_outdir(prefix, output_directory); else if (config_output_directory) output_directory = config_output_directory; if (mkdir(output_directory, 0777) < 0 && errno != EEXIST) die_errno(_("Could not create directory '%s'"), output_directory); } else setup_pager(); ? -- To unsubscribe from this list: send the line "unsubscribe git" in