diff options
author | Thomas Gummerer <t.gummerer@gmail.com> | 2016-02-16 10:47:52 +0100 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2016-02-16 13:33:12 -0800 |
commit | a31eeae27f38246ba35000fa603d884cdd1a81ae (patch) | |
tree | 94a7ab9e0812a5ed0303435ee35180b735aae3c6 /argv-array.c | |
parent | remote: actually check if remote exits (diff) | |
download | tgif-a31eeae27f38246ba35000fa603d884cdd1a81ae.tar.xz |
remote: use remote_is_configured() for add and rename
Both remote add and remote rename use a slightly different hand-rolled
check if the remote exits. The hand-rolled check may have some subtle
cases in which it might fail to detect when a remote already exists.
One such case was fixed in fb86e32 ("git remote: allow adding remotes
agreeing with url.<...>.insteadOf"). Another case is when a remote is
configured as follows:
[remote "foo"]
vcs = bar
If we try to run `git remote add foo bar` with the above remote
configuration, git segfaults. This change fixes it.
In addition, git remote rename $existing foo with the configuration for
foo as above silently succeeds, even though foo already exists,
modifying its configuration. With this patch it fails with "remote foo
already exists".
Signed-off-by: Thomas Gummerer <t.gummerer@gmail.com>
Reviewed-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'argv-array.c')
0 files changed, 0 insertions, 0 deletions