summaryrefslogtreecommitdiffstats
path: root/crypto/encode_decode/decoder_meth.c
diff options
context:
space:
mode:
Diffstat (limited to 'crypto/encode_decode/decoder_meth.c')
-rw-r--r--crypto/encode_decode/decoder_meth.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/crypto/encode_decode/decoder_meth.c b/crypto/encode_decode/decoder_meth.c
index c797084dd2..12f23a6193 100644
--- a/crypto/encode_decode/decoder_meth.c
+++ b/crypto/encode_decode/decoder_meth.c
@@ -210,8 +210,11 @@ void *ossl_decoder_from_algorithm(int id, const OSSL_ALGORITHM *algodef,
return NULL;
}
decoder->base.algodef = algodef;
- decoder->base.parsed_propdef
- = ossl_parse_property(libctx, algodef->property_definition);
+ if ((decoder->base.parsed_propdef
+ = ossl_parse_property(libctx, algodef->property_definition)) == NULL) {
+ OSSL_DECODER_free(decoder);
+ return NULL;
+ }
for (; fns->function_id != 0; fns++) {
switch (fns->function_id) {