mirror of https://github.com/moparisthebest/curl
Use calloc() to save us the memset() call and terminate conn->host.name
properly, to avoid reading uninited variables when using file:// (valgrind)
This commit is contained in:
parent
c7f51ebeab
commit
e6034ea299
|
@ -2182,7 +2182,7 @@ static CURLcode CreateConnection(struct SessionHandle *data,
|
||||||
to not have to modify everything at once, we allocate a temporary
|
to not have to modify everything at once, we allocate a temporary
|
||||||
connection data struct and fill in for comparison purposes. */
|
connection data struct and fill in for comparison purposes. */
|
||||||
|
|
||||||
conn = (struct connectdata *)malloc(sizeof(struct connectdata));
|
conn = (struct connectdata *)calloc(sizeof(struct connectdata), 1);
|
||||||
if(!conn) {
|
if(!conn) {
|
||||||
*in_connect = NULL; /* clear the pointer */
|
*in_connect = NULL; /* clear the pointer */
|
||||||
return CURLE_OUT_OF_MEMORY;
|
return CURLE_OUT_OF_MEMORY;
|
||||||
|
@ -2192,9 +2192,6 @@ static CURLcode CreateConnection(struct SessionHandle *data,
|
||||||
any failure */
|
any failure */
|
||||||
*in_connect = conn;
|
*in_connect = conn;
|
||||||
|
|
||||||
/* we have to init the struct */
|
|
||||||
memset(conn, 0, sizeof(struct connectdata));
|
|
||||||
|
|
||||||
/* and we setup a few fields in case we end up actually using this struct */
|
/* and we setup a few fields in case we end up actually using this struct */
|
||||||
conn->data = data; /* remember our daddy */
|
conn->data = data; /* remember our daddy */
|
||||||
conn->sock[FIRSTSOCKET] = CURL_SOCKET_BAD; /* no file descriptor */
|
conn->sock[FIRSTSOCKET] = CURL_SOCKET_BAD; /* no file descriptor */
|
||||||
|
@ -2249,6 +2246,7 @@ static CURLcode CreateConnection(struct SessionHandle *data,
|
||||||
if(NULL == conn->host.rawalloc)
|
if(NULL == conn->host.rawalloc)
|
||||||
return CURLE_OUT_OF_MEMORY;
|
return CURLE_OUT_OF_MEMORY;
|
||||||
conn->host.name = conn->host.rawalloc;
|
conn->host.name = conn->host.rawalloc;
|
||||||
|
conn->host.name[0] = 0;
|
||||||
|
|
||||||
/*************************************************************
|
/*************************************************************
|
||||||
* Parse the URL.
|
* Parse the URL.
|
||||||
|
|
Loading…
Reference in New Issue