1
0
mirror of https://github.com/moparisthebest/curl synced 2024-08-13 17:03:50 -04:00

pop3: Fixed continuous wait when using --ftp-list

Don't initiate a transfer when using --ftp-list.
This commit is contained in:
Steve Holme 2013-03-12 13:09:03 +00:00
parent 57ccdfa8d2
commit e450f66a02

View File

@ -1085,6 +1085,7 @@ static CURLcode pop3_state_command_resp(struct connectdata *conn,
{ {
CURLcode result = CURLE_OK; CURLcode result = CURLE_OK;
struct SessionHandle *data = conn->data; struct SessionHandle *data = conn->data;
struct POP3 *pop3 = data->state.proto.pop3;
struct pop3_conn *pop3c = &conn->proto.pop3c; struct pop3_conn *pop3c = &conn->proto.pop3c;
struct pingpong *pp = &pop3c->pp; struct pingpong *pp = &pop3c->pp;
@ -1105,25 +1106,27 @@ static CURLcode pop3_state_command_resp(struct connectdata *conn,
the strip counter here so that these bytes won't be delivered. */ the strip counter here so that these bytes won't be delivered. */
pop3c->strip = 2; pop3c->strip = 2;
/* POP3 download */ if(pop3->transfer == FTPTRANSFER_BODY) {
Curl_setup_transfer(conn, FIRSTSOCKET, -1, FALSE, NULL, -1, NULL); /* POP3 download */
Curl_setup_transfer(conn, FIRSTSOCKET, -1, FALSE, NULL, -1, NULL);
if(pp->cache) { if(pp->cache) {
/* The header "cache" contains a bunch of data that is actually body /* The header "cache" contains a bunch of data that is actually body
content so send it as such. Note that there may even be additional content so send it as such. Note that there may even be additional
"headers" after the body */ "headers" after the body */
if(!data->set.opt_no_body) { if(!data->set.opt_no_body) {
result = Curl_pop3_write(conn, pp->cache, pp->cache_size); result = Curl_pop3_write(conn, pp->cache, pp->cache_size);
if(result) if(result)
return result; return result;
}
/* Free the cache */
Curl_safefree(pp->cache);
/* Reset the cache size */
pp->cache_size = 0;
} }
/* Free the cache */
Curl_safefree(pp->cache);
/* Reset the cache size */
pp->cache_size = 0;
} }
/* End of DO phase */ /* End of DO phase */