bits.close: introduce connection close tracking
Make all code use connclose() and connkeep() when changing the "close state" for a connection. These two macros take a string argument with an explanation, and debug builds of curl will include that in the debug output. Helps tracking connection re-use/close issues.
This commit is contained in:
@@ -1881,7 +1881,7 @@ static CURLcode imap_connect(struct connectdata *conn, bool *done)
|
||||
*done = FALSE; /* default to not done yet */
|
||||
|
||||
/* We always support persistent connections in IMAP */
|
||||
conn->bits.close = FALSE;
|
||||
connkeep(conn, "IMAP default");
|
||||
|
||||
/* Set the default response time-out */
|
||||
pp->response_time = RESP_TIMEOUT;
|
||||
@@ -1938,7 +1938,7 @@ static CURLcode imap_done(struct connectdata *conn, CURLcode status,
|
||||
return CURLE_OK;
|
||||
|
||||
if(status) {
|
||||
conn->bits.close = TRUE; /* marked for closure */
|
||||
connclose(conn, "IMAP done with bad status"); /* marked for closure */
|
||||
result = status; /* use the already set error code */
|
||||
}
|
||||
else if(!data->set.connect_only && !imap->custom &&
|
||||
|
||||
Reference in New Issue
Block a user