diff options
author | marha <marha@users.sourceforge.net> | 2015-04-20 23:05:23 +0200 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2015-04-20 23:05:23 +0200 |
commit | 0f7871ff824bcf064db3ab6bdfe26645ba6c8087 (patch) | |
tree | 90d3d2b6112e083289c9cf68146852087814f6d3 /openssl/crypto/objects/o_names.c | |
parent | 934184bfecd402aae891b8740d788b486aa7269f (diff) | |
parent | 2a00e489122f6c4b525090dbdba2855a2ea2d519 (diff) | |
download | vcxsrv-0f7871ff824bcf064db3ab6bdfe26645ba6c8087.tar.gz vcxsrv-0f7871ff824bcf064db3ab6bdfe26645ba6c8087.tar.bz2 vcxsrv-0f7871ff824bcf064db3ab6bdfe26645ba6c8087.zip |
Merge remote-tracking branch 'origin/released'
Conflicts:
openssl/Makefile
Diffstat (limited to 'openssl/crypto/objects/o_names.c')
-rw-r--r-- | openssl/crypto/objects/o_names.c | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/openssl/crypto/objects/o_names.c b/openssl/crypto/objects/o_names.c index e1e13a613..c6774f457 100644 --- a/openssl/crypto/objects/o_names.c +++ b/openssl/crypto/objects/o_names.c @@ -312,15 +312,18 @@ void OBJ_NAME_do_all_sorted(int type, d.type = type; d.names = OPENSSL_malloc(lh_OBJ_NAME_num_items(names_lh) * sizeof *d.names); - d.n = 0; - OBJ_NAME_do_all(type, do_all_sorted_fn, &d); + /* Really should return an error if !d.names...but its a void function! */ + if(d.names) { + d.n = 0; + OBJ_NAME_do_all(type, do_all_sorted_fn, &d); - qsort((void *)d.names, d.n, sizeof *d.names, do_all_sorted_cmp); + qsort((void *)d.names, d.n, sizeof *d.names, do_all_sorted_cmp); - for (n = 0; n < d.n; ++n) - fn(d.names[n], arg); + for (n = 0; n < d.n; ++n) + fn(d.names[n], arg); - OPENSSL_free((void *)d.names); + OPENSSL_free((void *)d.names); + } } static int free_type; |