Commit 2e2f3cb5baf1aed20c4eda08e043a2cf2515f275

Sebastian Rasmussen 2020-06-19T16:29:07

[psaux] Fix memory leak (#58626). * src/psaux/psstack.c (cf2_stack_init): If `cf2_stack_init' fails to allocate the stack, return error early.

diff --git a/ChangeLog b/ChangeLog
index b380a72..19967d7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,12 @@
 2020-06-19  Sebastian Rasmussen  <sebras@gmail.com>
 
+	[psaux] Fix memory leak (#58626).
+
+	* src/psaux/psstack.c (cf2_stack_init): If `cf2_stack_init' fails to
+	allocate the stack, return error early.
+
+2020-06-19  Sebastian Rasmussen  <sebras@gmail.com>
+
 	[base] Fix memory leak (#58624).
 
 	* src/base/ftobjs.c (FT_New_Size): Avoid trying to free
diff --git a/src/psaux/psstack.c b/src/psaux/psstack.c
index bebbba2..7ae5256 100644
--- a/src/psaux/psstack.c
+++ b/src/psaux/psstack.c
@@ -59,12 +59,12 @@
     CF2_Stack  stack = NULL;
 
 
-    if ( !FT_NEW( stack ) )
-    {
-      /* initialize the structure; FT_NEW zeroes it */
-      stack->memory = memory;
-      stack->error  = e;
-    }
+    if ( FT_NEW( stack ) )
+      return NULL;
+
+    /* initialize the structure; FT_NEW zeroes it */
+    stack->memory = memory;
+    stack->error  = e;
 
     /* allocate the stack buffer */
     if ( FT_NEW_ARRAY( stack->buffer, stackSize ) )