diff options
Diffstat (limited to 'lib/libalpm/alpm.c')
-rw-r--r-- | lib/libalpm/alpm.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/lib/libalpm/alpm.c b/lib/libalpm/alpm.c index d1265214..34c5b4b2 100644 --- a/lib/libalpm/alpm.c +++ b/lib/libalpm/alpm.c @@ -70,6 +70,11 @@ alpm_handle_t SYMEXPORT *alpm_initialize(const char *root, const char *dbpath, goto cleanup; } +#ifdef HAVE_LIBCURL + curl_global_init(CURL_GLOBAL_ALL); + myhandle->curlm = curl_multi_init(); +#endif + #ifdef ENABLE_NLS bindtextdomain("libalpm", LOCALEDIR); #endif @@ -104,13 +109,14 @@ int SYMEXPORT alpm_release(alpm_handle_t *myhandle) ret = -1; } - _alpm_handle_unlock(myhandle); - _alpm_handle_free(myhandle); - #ifdef HAVE_LIBCURL + curl_multi_cleanup(myhandle->curlm); curl_global_cleanup(); #endif + _alpm_handle_unlock(myhandle); + _alpm_handle_free(myhandle); + return ret; } |