fix out of memory handling issue

This commit is contained in:
Yang Tse
2007-04-07 04:51:35 +00:00
parent 47594be5c0
commit d9e89e170f
2 changed files with 18 additions and 4 deletions

View File

@@ -678,10 +678,19 @@ struct curl_slist *Curl_ossl_engines_list(struct SessionHandle *data)
{
struct curl_slist *list = NULL;
#if defined(USE_SSLEAY) && defined(HAVE_OPENSSL_ENGINE_H)
struct curl_slist *beg = NULL;
ENGINE *e;
for (e = ENGINE_get_first(); e; e = ENGINE_get_next(e))
for (e = ENGINE_get_first(); e; e = ENGINE_get_next(e)) {
list = curl_slist_append(list, ENGINE_get_id(e));
if (list == NULL) {
curl_slist_free_all(beg);
return NULL;
}
else if (beg == NULL) {
beg = list;
}
}
#endif
(void) data;
return (list);