From 545583d664b64ff234b99aca0d85e99c8a55808f Mon Sep 17 00:00:00 2001 From: Siddhesh Poyarekar Date: Tue, 16 Sep 2014 14:20:45 +0530 Subject: [PATCH] Fix memory leak in error path of do_ftell_wide (BZ #17370) --- ChangeLog | 5 +++++ libio/wfileops.c | 5 ++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 915b492006..d5fd959e0d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2014-09-16 Siddhesh Poyarekar + + [BZ #17370] + * libio/wfileops.c (do_ftell_wide): Free OUT on error path. + 2014-09-16 Siddhesh Poyarekar Jakub Jelinek diff --git a/libio/wfileops.c b/libio/wfileops.c index ebc06e85de..c5ec5f7a27 100644 --- a/libio/wfileops.c +++ b/libio/wfileops.c @@ -708,7 +708,10 @@ do_ftell_wide (_IO_FILE *fp) sequences must be complete since they are accepted as wchar_t; if not, then that is an error. */ if (__glibc_unlikely (status != __codecvt_ok)) - return WEOF; + { + free (out); + return WEOF; + } offset += outstop - out; free (out);