diff options
author | Carlos Martín Nieto <cmn@dwim.me> | 2015-09-23 04:39:05 +0200 |
---|---|---|
committer | Carlos Martín Nieto <cmn@dwim.me> | 2016-04-19 13:54:19 +0200 |
commit | 22e6aa0d4fc7a619472aa8da69163dc210781956 (patch) | |
tree | c304ac47eda55a6b5a338bc286bb8d1094688c8a | |
parent | 2f3f1ee08532b10993b7e9270e5fe61f08f795ee (diff) | |
download | libgit2-22e6aa0d4fc7a619472aa8da69163dc210781956.tar.gz |
proxy: don't require the trailing slash on WinHTTP
The path is not something that you use for proxies, so make use of the
new optionality of the path when extracting URL parts.
-rw-r--r-- | appveyor.yml | 4 | ||||
-rw-r--r-- | src/transports/winhttp.c | 3 |
2 files changed, 4 insertions, 3 deletions
diff --git a/appveyor.yml b/appveyor.yml index 50152adb2..4c58df6b3 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -40,9 +40,9 @@ test_script: ctest -V -R libgit2_clar-cred_callback Start-Job { java -jar $Env:APPVEYOR_BUILD_FOLDER\build\poxyproxy.jar -d --port 8080 --credentials foo:bar } ctest -V . - $env:GITTEST_REMOTE_PROXY_URL = "http://foo:bar@localhost:8080/" + $env:GITTEST_REMOTE_PROXY_URL = "http://foo:bar@localhost:8080" .\Debug\libgit2_clar.exe -sonline::clone::proxy_credentials_in_url - $env:GITTEST_REMOTE_PROXY_URL = "http://localhost:8080/" + $env:GITTEST_REMOTE_PROXY_URL = "http://localhost:8080" $env:GITTEST_REMOTE_PROXY_USER = "foo" $env:GITTEST_REMOTE_PROXY_PASS = "bar" .\Debug\libgit2_clar.exe -sonline::clone::proxy_credentials_request diff --git a/src/transports/winhttp.c b/src/transports/winhttp.c index 22be39c6c..5a506d20d 100644 --- a/src/transports/winhttp.c +++ b/src/transports/winhttp.c @@ -388,7 +388,8 @@ static int winhttp_stream_connect(winhttp_stream *s) WINHTTP_PROXY_INFO proxy_info; wchar_t *proxy_wide; - if ((error = gitno_connection_data_from_url(&t->proxy_connection_data, proxy_url, NULL)) < 0) + if ((error = gitno_extract_url_parts(&t->proxy_connection_data.host, &t->proxy_connection_data.port, NULL, + &t->proxy_connection_data.user, &t->proxy_connection_data.pass, proxy_url, NULL)) < 0) goto on_error; if (t->proxy_connection_data.user && t->proxy_connection_data.pass) { |