Commit 99ba983e28 for openssl.org

commit 99ba983e28f07c6dc38538cd9bc71cd3e070f3c4
Author: Weidong Wang <kenazcharisma@gmail.com>
Date:   Mon Mar 9 05:19:11 2026 -0500

    Fix memory leak in `EC_GROUP_copy()`

    We must free pre_comp before its overwrite.

    Fixes: 3aef36ffef89 "Add CRYPTO_EX_DATA; remove EC_EXTRA_DATA"

    Reviewed-by: Eugene Syromiatnikov <esyr@openssl.org>
    Reviewed-by: Paul Yang <paulyang.inf@gmail.com>
    Reviewed-by: Paul Dale <paul.dale@oracle.com>
    Reviewed-by: Tomas Mraz <tomas@openssl.org>
    MergeDate: Tue Mar 10 19:04:33 2026
    (Merged from https://github.com/openssl/openssl/pull/30320)

diff --git a/crypto/ec/ec_lib.c b/crypto/ec/ec_lib.c
index 01757f0588..0760944647 100644
--- a/crypto/ec/ec_lib.c
+++ b/crypto/ec/ec_lib.c
@@ -175,6 +175,8 @@ int EC_GROUP_copy(EC_GROUP *dest, const EC_GROUP *src)
     dest->libctx = src->libctx;
     dest->curve_name = src->curve_name;

+    EC_pre_comp_free(dest);
+
     /* Copy precomputed */
     dest->pre_comp_type = src->pre_comp_type;
     switch (src->pre_comp_type) {