diff options
author | Junio C Hamano <gitster@pobox.com> | 2016-07-19 23:22:19 +0300 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2016-07-19 23:22:19 +0300 |
commit | d4c6375fd8996d7d809fb34b9743339d7192c58b (patch) | |
tree | 958ff37108df971e18b2989cfc390d4dde80c41e /shell.c | |
parent | df9da64a7c2aee12fd967cb9ff1730312d4b271d (diff) | |
parent | de61cebde72a15b85b6e6a06ef4c3614b6afdac8 (diff) |
Merge branch 'jk/common-main'
There are certain house-keeping tasks that need to be performed at
the very beginning of any Git program, and programs that are not
built-in commands had to do them exactly the same way as "git"
potty does. It was easy to make mistakes in one-off standalone
programs (like test helpers). A common "main()" function that
calls cmd_main() of individual program has been introduced to
make it harder to make mistakes.
* jk/common-main:
mingw: declare main()'s argv as const
common-main: call git_setup_gettext()
common-main: call restore_sigpipe_to_default()
common-main: call sanitize_stdfds()
common-main: call git_extract_argv0_path()
add an extra level of indirection to main()
Diffstat (limited to 'shell.c')
-rw-r--r-- | shell.c | 13 |
1 files changed, 1 insertions, 12 deletions
@@ -138,24 +138,13 @@ static struct commands { { NULL }, }; -int main(int argc, char **argv) +int cmd_main(int argc, const char **argv) { char *prog; const char **user_argv; struct commands *cmd; int count; - git_setup_gettext(); - - git_extract_argv0_path(argv[0]); - - /* - * Always open file descriptors 0/1/2 to avoid clobbering files - * in die(). It also avoids messing up when the pipes are dup'ed - * onto stdin/stdout/stderr in the child processes we spawn. - */ - sanitize_stdfds(); - /* * Special hack to pretend to be a CVS server */ |