diff options
| -rw-r--r-- | Makefile | 2 | ||||
| -rw-r--r-- | builtin-shell.c (renamed from shell.c) | 5 | ||||
| -rw-r--r-- | builtin.h | 1 | ||||
| -rw-r--r-- | git.c | 1 | 
4 files changed, 6 insertions, 3 deletions
| @@ -546,6 +546,7 @@ BUILTIN_OBJS += builtin-rev-parse.o  BUILTIN_OBJS += builtin-revert.o  BUILTIN_OBJS += builtin-rm.o  BUILTIN_OBJS += builtin-send-pack.o +BUILTIN_OBJS += builtin-shell.o  BUILTIN_OBJS += builtin-shortlog.o  BUILTIN_OBJS += builtin-show-branch.o  BUILTIN_OBJS += builtin-show-ref.o @@ -821,7 +822,6 @@ EXTLIBS += -lz  ifndef NO_POSIX_ONLY_PROGRAMS  	PROGRAMS += git-daemon$X  	PROGRAMS += git-imap-send$X -	PROGRAMS += git-shell$X  endif  ifndef NO_OPENSSL  	OPENSSL_LIBSSL = -lssl diff --git a/shell.c b/builtin-shell.c index 0f6a727a8c..3cf97d4f5d 100644 --- a/shell.c +++ b/builtin-shell.c @@ -2,6 +2,7 @@  #include "quote.h"  #include "exec_cmd.h"  #include "strbuf.h" +#include "builtin.h"  static int do_generic_cmd(const char *me, char *arg)  { @@ -44,7 +45,7 @@ static struct commands {  	{ NULL },  }; -int main(int argc, char **argv) +int cmd_shell(int argc, const char **argv, const char *prefix)  {  	char *prog;  	struct commands *cmd; @@ -62,7 +63,7 @@ int main(int argc, char **argv)  	else if (argc != 3 || strcmp(argv[1], "-c"))  		die("What do you think I am? A shell?"); -	prog = argv[2]; +	prog = xstrdup(argv[2]);  	if (!strncmp(prog, "git", 3) && isspace(prog[3]))  		/* Accept "git foo" as if the caller said "git-foo". */  		prog[3] = '-'; @@ -88,6 +88,7 @@ extern int cmd_rev_parse(int argc, const char **argv, const char *prefix);  extern int cmd_revert(int argc, const char **argv, const char *prefix);  extern int cmd_rm(int argc, const char **argv, const char *prefix);  extern int cmd_send_pack(int argc, const char **argv, const char *prefix); +extern int cmd_shell(int argc, const char **argv, const char *prefix);  extern int cmd_shortlog(int argc, const char **argv, const char *prefix);  extern int cmd_show(int argc, const char **argv, const char *prefix);  extern int cmd_show_branch(int argc, const char **argv, const char *prefix); @@ -338,6 +338,7 @@ static void handle_internal_command(int argc, const char **argv)  		{ "revert", cmd_revert, RUN_SETUP | NEED_WORK_TREE },  		{ "rm", cmd_rm, RUN_SETUP },  		{ "send-pack", cmd_send_pack, RUN_SETUP }, +		{ "shell", cmd_shell },  		{ "shortlog", cmd_shortlog, USE_PAGER },  		{ "show-branch", cmd_show_branch, RUN_SETUP },  		{ "show", cmd_show, RUN_SETUP | USE_PAGER }, | 
