Skip to content
Snippets Groups Projects
Commit e051f904 authored by Sterling Hughes's avatar Sterling Hughes
Browse files

Test and substance patch.

This is my first CVS commit :), what it does:

- Makes sure that parts of the cURL library don't get initialized twice
- Makes sure that we only free what we initialize
parent f8d94a38
No related branches found
No related tags found
No related merge requests found
......@@ -78,17 +78,27 @@
#define _MPRINTF_REPLACE /* use our functions only */
#include <curl/mprintf.h>
/* true globals */
static unsigned int initialized = 0;
static long init_flags = 0;
CURLcode curl_global_init(long flags)
{
if(flags & CURL_GLOBAL_SSL)
Curl_SSL_init();
initialized = 1;
init_flags = flags;
return CURLE_OK;
}
void curl_global_cleanup(void)
{
Curl_SSL_cleanup();
if (init_flags & CURL_GLOBAL_SSL)
Curl_SSL_cleanup();
initialized = 0;
}
CURL *curl_easy_init(void)
......@@ -97,7 +107,8 @@ CURL *curl_easy_init(void)
struct UrlData *data;
/* Make sure we inited the global SSL stuff */
Curl_SSL_init();
if (!initialized)
curl_global_init(CURL_GLOBAL_DEFAULT);
/* We use curl_open() with undefined URL so far */
res = Curl_open((CURL **)&data, NULL);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment