summaryrefslogtreecommitdiff
path: root/src/tool_operate.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/tool_operate.c')
-rw-r--r--src/tool_operate.c20
1 files changed, 11 insertions, 9 deletions
diff --git a/src/tool_operate.c b/src/tool_operate.c
index d648dc054..44f01e94e 100644
--- a/src/tool_operate.c
+++ b/src/tool_operate.c
@@ -668,15 +668,17 @@ static long url_proto(char *url)
{
CURLU *uh = curl_url();
long proto = 0;
- if(url) {
- if(!curl_url_set(uh, CURLUPART_URL, url,
- CURLU_GUESS_SCHEME | CURLU_NON_SUPPORT_SCHEME)) {
- char *schemep = NULL;
- if(!curl_url_get(uh, CURLUPART_SCHEME, &schemep,
- CURLU_DEFAULT_SCHEME) &&
- schemep) {
- proto = scheme2protocol(schemep);
- curl_free(schemep);
+ if(uh) {
+ if(url) {
+ if(!curl_url_set(uh, CURLUPART_URL, url,
+ CURLU_GUESS_SCHEME | CURLU_NON_SUPPORT_SCHEME)) {
+ char *schemep = NULL;
+ if(!curl_url_get(uh, CURLUPART_SCHEME, &schemep,
+ CURLU_DEFAULT_SCHEME) &&
+ schemep) {
+ proto = scheme2protocol(schemep);
+ curl_free(schemep);
+ }
}
}
curl_url_cleanup(uh);