From ff346b639e151320ea9ae5c319db606ad16f7a7f Mon Sep 17 00:00:00 2001 From: Perry Werneck Date: Fri, 23 Nov 2018 15:25:42 -0200 Subject: [PATCH] Fixing memory leak on lib3270 cleanup. --- src/lib3270/Makefile.in | 11 +++++++++++ src/lib3270/session.c | 3 +++ 2 files changed, 14 insertions(+), 0 deletions(-) diff --git a/src/lib3270/Makefile.in b/src/lib3270/Makefile.in index 84e44a3..953fece 100644 --- a/src/lib3270/Makefile.in +++ b/src/lib3270/Makefile.in @@ -51,6 +51,7 @@ XGETTEXT=@XGETTEXT@ MSGCAT=@MSGCAT@ WINDRES=@WINDRES@ AR=@AR@ +VALGRIND=@VALGRIND@ #---[ Paths ]---------------------------------------------------------------------------- @@ -297,9 +298,19 @@ $(BINDBG)/$(LIBNAME)@EXEEXT@: \ run: \ $(BINDBG)/$(LIBNAME)@EXEEXT@ +ifeq ($(VALGRIND),no) + @LD_LIBRARY_PATH=$(BINDBG) \ $(BINDBG)/$(LIBNAME)@EXEEXT@ +else + @touch valgrind.suppression + + @LD_LIBRARY_PATH=$(BINDBG) \ + $(VALGRIND) --leak-check=full --track-origins=yes --gen-suppressions=all --suppressions=valgrind.suppression \ + $(BINDBG)/$(LIBNAME)@EXEEXT@ +endif + $(BINDBG)/$(LIBNAME)@DLLEXT@: \ $(BINDBG)/$(LIBNAME)@DLLEXT@.@PACKAGE_MAJOR_VERSION@ diff --git a/src/lib3270/session.c b/src/lib3270/session.c index c826f50..8e5392b 100644 --- a/src/lib3270/session.c +++ b/src/lib3270/session.c @@ -105,6 +105,9 @@ void lib3270_session_free(H3270 *h) release_pointer(h->charset.host); release_pointer(h->charset.display); + release_pointer(h->text); + release_pointer(h->zero_buf); + trace("Releasing session %p",h); lib3270_free(h); -- libgit2 0.21.2