summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Rasmussen <sebras@gmail.com>2020-06-19 16:29:07 +0800
committerWerner Lemberg <wl@gnu.org>2020-06-19 18:51:33 +0200
commit2e2f3cb5baf1aed20c4eda08e043a2cf2515f275 (patch)
treec5a3587969ff89ed1f0cf565d01094465e565ceb
parent09b98060d3e0edfe78ea88ca8b851751a924ecac (diff)
downloadfreetype2-2e2f3cb5baf1aed20c4eda08e043a2cf2515f275.tar.gz
[psaux] Fix memory leak (#58626).
* src/psaux/psstack.c (cf2_stack_init): If `cf2_stack_init' fails to allocate the stack, return error early.
-rw-r--r--ChangeLog7
-rw-r--r--src/psaux/psstack.c12
2 files changed, 13 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index b380a72ab..19967d709 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 bebbba218..7ae5256ef 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 ) )