easy: fix compiler warning: end-of-loop code not reached

This commit is contained in:
Yang Tse
2010-12-07 03:27:59 +01:00
parent 5965d4554d
commit 0b5901bec6

View File

@@ -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;
if(!outcurl->change.cookielist)
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;
}
/*