[PATCH 4/5] usp10: Avoid leaking "open_stack" and "stack_index" in case of 0 "pair_count" in computeBracketPairs().
Signed-off-by: Henri Verbeet <hverbeet(a)codeweavers.com> --- dlls/usp10/bidi.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/dlls/usp10/bidi.c b/dlls/usp10/bidi.c index d94dc7b..8f94ede 100644 --- a/dlls/usp10/bidi.c +++ b/dlls/usp10/bidi.c @@ -741,6 +741,10 @@ static BracketPair *computeBracketPairs(IsolatedRun *iso_run) } } } + + heap_free(open_stack); + heap_free(stack_index); + if (pair_count == 0) { heap_free(out); @@ -749,8 +753,6 @@ static BracketPair *computeBracketPairs(IsolatedRun *iso_run) else if (pair_count > 1) qsort(out, pair_count, sizeof(BracketPair), compr); - heap_free(open_stack); - heap_free(stack_index); return out; } -- 2.1.4
Signed-off-by: Aric Stewart <aric(a)codeweavers.com> On 2/18/18 12:08 PM, Henri Verbeet wrote:
Signed-off-by: Henri Verbeet <hverbeet(a)codeweavers.com> --- dlls/usp10/bidi.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/dlls/usp10/bidi.c b/dlls/usp10/bidi.c index d94dc7b..8f94ede 100644 --- a/dlls/usp10/bidi.c +++ b/dlls/usp10/bidi.c @@ -741,6 +741,10 @@ static BracketPair *computeBracketPairs(IsolatedRun *iso_run) } } } + + heap_free(open_stack); + heap_free(stack_index); + if (pair_count == 0) { heap_free(out); @@ -749,8 +753,6 @@ static BracketPair *computeBracketPairs(IsolatedRun *iso_run) else if (pair_count > 1) qsort(out, pair_count, sizeof(BracketPair), compr);
- heap_free(open_stack); - heap_free(stack_index); return out; }
participants (2)
-
Aric Stewart -
Henri Verbeet