diff options
author | Junio C Hamano <gitster@pobox.com> | 2014-02-05 13:58:51 -0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2014-02-05 13:58:52 -0800 |
commit | bf03d6e92d63caa81e5ba410f0eed89b700e042d (patch) | |
tree | f8f89558fa79f9cb0e75b2f52e8cc056aff3a2e4 | |
parent | git-svn: workaround for a bug in svn serf backend (diff) | |
parent | clone,fetch: catch non positive --depth option value (diff) | |
download | tgif-bf03d6e92d63caa81e5ba410f0eed89b700e042d.tar.xz |
Merge branch 'nd/transport-positive-depth-only' into maint
"git fetch --depth=0" was a no-op, and was silently ignored.
Diagnose it as an error.
* nd/transport-positive-depth-only:
clone,fetch: catch non positive --depth option value
-rw-r--r-- | builtin/clone.c | 4 | ||||
-rw-r--r-- | builtin/fetch.c | 4 |
2 files changed, 8 insertions, 0 deletions
diff --git a/builtin/clone.c b/builtin/clone.c index 874e0fd0b6..cc11104d42 100644 --- a/builtin/clone.c +++ b/builtin/clone.c @@ -796,6 +796,10 @@ int cmd_clone(int argc, const char **argv, const char *prefix) if (option_local > 0 && !is_local) warning(_("--local is ignored")); + /* no need to be strict, transport_set_option() will validate it again */ + if (option_depth && atoi(option_depth) < 1) + die(_("depth %s is not a positive number"), option_depth); + if (argc == 2) dir = xstrdup(argv[1]); else diff --git a/builtin/fetch.c b/builtin/fetch.c index bd7a10164f..5bd00d064a 100644 --- a/builtin/fetch.c +++ b/builtin/fetch.c @@ -1075,6 +1075,10 @@ int cmd_fetch(int argc, const char **argv, const char *prefix) } } + /* no need to be strict, transport_set_option() will validate it again */ + if (depth && atoi(depth) < 1) + die(_("depth %s is not a positive number"), depth); + if (recurse_submodules != RECURSE_SUBMODULES_OFF) { if (recurse_submodules_default) { int arg = parse_fetch_recurse_submodules_arg("--recurse-submodules-default", recurse_submodules_default); |