X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=shell.c;h=8c08cf0fb339d293383c3dacb8cdfc805afa3727;hb=1a82e79315ed633f6b0b1fc4076054950c5380d3;hp=2c4789e944058c7dcab2deb5935a054691550d36;hpb=e634aec752642dcf86c3fc82025e43381d6768c2;p=git.git diff --git a/shell.c b/shell.c index 2c4789e9..8c08cf0f 100644 --- a/shell.c +++ b/shell.c @@ -1,19 +1,21 @@ #include "cache.h" #include "quote.h" +#include "exec_cmd.h" static int do_generic_cmd(const char *me, char *arg) { const char *my_argv[4]; - arg = sq_dequote(arg); - if (!arg) + if (!arg || !(arg = sq_dequote(arg))) die("bad argument"); + if (strncmp(me, "git-", 4)) + die("bad command"); - my_argv[0] = me; + my_argv[0] = me + 4; my_argv[1] = arg; my_argv[2] = NULL; - return execvp(me, (char**) my_argv); + return execv_git_cmd(my_argv); } static struct commands {