]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
ast_expr2: Fix off-nominal memory leak. 68/3168/1
authorRichard Mudgett <rmudgett@digium.com>
Mon, 11 Jul 2016 18:42:55 +0000 (13:42 -0500)
committerRichard Mudgett <rmudgett@digium.com>
Mon, 11 Jul 2016 18:51:29 +0000 (13:51 -0500)
Thanks to ibercom for pointing out a memory leak that was missed
in the earlier patch for the issue.

ASTERISK-26119
Reported by: Alexei Gradinari

Change-Id: I9a151f5c4725d97fb82a9e938bc73dc659532b71

main/ast_expr2.c
main/ast_expr2.y

index b914598ec828235363392e2b49f33b5d14345fb9..215f8312fd3c534eaaa482d821342d24228e2c19 100644 (file)
@@ -3673,6 +3673,8 @@ op_tildetilde (struct val *a, struct val *b)
        vs = malloc(strlen(a->u.s)+strlen(b->u.s)+1);
        if (vs == NULL) {
                ast_log(LOG_WARNING, "malloc() failed\n");
+               free_value(a);
+               free_value(b);
                return NULL;
        }
 
index 29fee35cf6c0036afdfd5eccc1115abd4e3637a5..8b32b2b9c01621a50894162dc9457a42e0d6cff0 100644 (file)
@@ -1666,6 +1666,8 @@ op_tildetilde (struct val *a, struct val *b)
        vs = malloc(strlen(a->u.s)+strlen(b->u.s)+1);
        if (vs == NULL) {
                ast_log(LOG_WARNING, "malloc() failed\n");
+               free_value(a);
+               free_value(b);
                return NULL;
        }