easy: fix compiler warning: end-of-loop code not reached
This commit is contained in:
36
lib/easy.c
36
lib/easy.c
@@ -626,15 +626,11 @@ CURLcode curl_easy_getinfo(CURL *curl, CURLINFO info, ...)
|
||||
*/
|
||||
CURL *curl_easy_duphandle(CURL *incurl)
|
||||
{
|
||||
bool fail = TRUE;
|
||||
struct SessionHandle *data=(struct SessionHandle *)incurl;
|
||||
|
||||
struct SessionHandle *outcurl = calloc(1, sizeof(struct SessionHandle));
|
||||
|
||||
if(NULL == outcurl)
|
||||
return NULL; /* failure */
|
||||
|
||||
for(;;) {
|
||||
goto fail;
|
||||
|
||||
/*
|
||||
* We setup a few buffers we need. We should probably make them
|
||||
@@ -643,12 +639,12 @@ CURL *curl_easy_duphandle(CURL *incurl)
|
||||
*/
|
||||
outcurl->state.headerbuff = malloc(HEADERSIZE);
|
||||
if(!outcurl->state.headerbuff)
|
||||
break;
|
||||
goto fail;
|
||||
outcurl->state.headersize = HEADERSIZE;
|
||||
|
||||
/* copy all userdefined values */
|
||||
if(Curl_dupset(outcurl, data) != CURLE_OK)
|
||||
break;
|
||||
goto fail;
|
||||
|
||||
/* the connection cache is setup on demand */
|
||||
outcurl->state.connc = NULL;
|
||||
@@ -667,7 +663,7 @@ CURL *curl_easy_duphandle(CURL *incurl)
|
||||
outcurl->cookies,
|
||||
data->set.cookiesession);
|
||||
if(!outcurl->cookies)
|
||||
break;
|
||||
goto fail;
|
||||
}
|
||||
#endif /* CURL_DISABLE_HTTP */
|
||||
|
||||
@@ -677,23 +673,22 @@ CURL *curl_easy_duphandle(CURL *incurl)
|
||||
if(data->change.cookielist) {
|
||||
outcurl->change.cookielist =
|
||||
Curl_slist_duplicate(data->change.cookielist);
|
||||
|
||||
if(!outcurl->change.cookielist)
|
||||
break;
|
||||
goto fail;
|
||||
}
|
||||
#endif /* CURL_DISABLE_HTTP */
|
||||
|
||||
if(data->change.url) {
|
||||
outcurl->change.url = strdup(data->change.url);
|
||||
if(!outcurl->change.url)
|
||||
break;
|
||||
goto fail;
|
||||
outcurl->change.url_alloc = TRUE;
|
||||
}
|
||||
|
||||
if(data->change.referer) {
|
||||
outcurl->change.referer = strdup(data->change.referer);
|
||||
if(!outcurl->change.referer)
|
||||
break;
|
||||
goto fail;
|
||||
outcurl->change.referer_alloc = TRUE;
|
||||
}
|
||||
|
||||
@@ -701,7 +696,7 @@ CURL *curl_easy_duphandle(CURL *incurl)
|
||||
/* If we use ares, we clone the ares channel for the new handle */
|
||||
if(ARES_SUCCESS != ares_dup(&outcurl->state.areschannel,
|
||||
data->state.areschannel))
|
||||
break;
|
||||
goto fail;
|
||||
#endif
|
||||
|
||||
#if defined(CURL_DOES_CONVERSIONS) && defined(HAVE_ICONV)
|
||||
@@ -717,11 +712,12 @@ CURL *curl_easy_duphandle(CURL *incurl)
|
||||
|
||||
outcurl->magic = CURLEASY_MAGIC_NUMBER;
|
||||
|
||||
fail = FALSE; /* we reach this point and thus we are OK */
|
||||
break;
|
||||
}
|
||||
/* we reach this point and thus we are OK */
|
||||
|
||||
return outcurl;
|
||||
|
||||
fail:
|
||||
|
||||
if(fail) {
|
||||
if(outcurl) {
|
||||
if(outcurl->state.connc &&
|
||||
(outcurl->state.connc->type == CONNCACHE_PRIVATE))
|
||||
@@ -737,12 +733,10 @@ CURL *curl_easy_duphandle(CURL *incurl)
|
||||
if(outcurl->change.referer)
|
||||
free(outcurl->change.referer);
|
||||
Curl_freeset(outcurl);
|
||||
free(outcurl); /* free the memory again */
|
||||
outcurl = NULL;
|
||||
}
|
||||
free(outcurl);
|
||||
}
|
||||
|
||||
return outcurl;
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/*
|
||||
|
Reference in New Issue
Block a user