summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVicent Martí <vicent@github.com>2013-08-14 06:44:28 -0700
committerVicent Martí <vicent@github.com>2013-08-14 06:44:28 -0700
commit9d1751bf6e903821e87f331b8f63a2d5616a9d6c (patch)
tree46a55c8a20b76a0fb568b19c85d90b228b75512c
parentc4ded21e832a1af4496647a928c689d59c156604 (diff)
parent0b9ebb54ff9aab86bb858e1d2952efa4dcdafefa (diff)
downloadlibgit2-9d1751bf6e903821e87f331b8f63a2d5616a9d6c.tar.gz
Merge pull request #1783 from libgit2/cmn/relax-remote
remote: relax the url rules
-rw-r--r--src/remote.c6
-rw-r--r--tests-clar/network/remote/remotes.c10
2 files changed, 6 insertions, 10 deletions
diff --git a/src/remote.c b/src/remote.c
index 158f3e938..0dda196df 100644
--- a/src/remote.c
+++ b/src/remote.c
@@ -272,12 +272,6 @@ int git_remote_load(git_remote **out, git_repository *repo, const char *name)
if ((error = git_config_get_string(&val, config, git_buf_cstr(&buf))) < 0)
goto cleanup;
- if (strlen(val) == 0) {
- giterr_set(GITERR_INVALID, "Malformed remote '%s' - missing URL", name);
- error = -1;
- goto cleanup;
- }
-
remote->repo = repo;
remote->url = git__strdup(val);
GITERR_CHECK_ALLOC(remote->url);
diff --git a/tests-clar/network/remote/remotes.c b/tests-clar/network/remote/remotes.c
index 3c4fa96fa..dec646526 100644
--- a/tests-clar/network/remote/remotes.c
+++ b/tests-clar/network/remote/remotes.c
@@ -361,13 +361,15 @@ void test_network_remote_remotes__tagopt(void)
git_config_free(cfg);
}
-void test_network_remote_remotes__cannot_load_with_an_empty_url(void)
+void test_network_remote_remotes__can_load_with_an_empty_url(void)
{
git_remote *remote = NULL;
- cl_git_fail(git_remote_load(&remote, _repo, "empty-remote-url"));
- cl_assert(giterr_last()->klass == GITERR_INVALID);
- cl_assert_equal_p(remote, NULL);
+ cl_git_pass(git_remote_load(&remote, _repo, "empty-remote-url"));
+
+ cl_git_fail(git_remote_connect(remote, GIT_DIRECTION_FETCH));
+
+ git_remote_free(remote);
}
void test_network_remote_remotes__check_structure_version(void)