From ab7a09e5609c979fa3cef449e59a1af615d66f2d Mon Sep 17 00:00:00 2001 From: ben Date: Mon, 27 Aug 2012 19:11:39 +0000 Subject: [PATCH] Fix a memory leak in parse_ttymodes() (found by Memcheck/Valgrind). git-svn-id: svn://svn.tartarus.org/sgt/putty@9633 cda61777-01e9-0310-a592-d414129be87e --- ssh.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/ssh.c b/ssh.c index bfc10b02..bdab733f 100644 --- a/ssh.c +++ b/ssh.c @@ -1062,12 +1062,14 @@ static void parse_ttymodes(Ssh ssh, * follows it, or 'A' indicating that we should pass the * value through from the local environment via get_ttymode. */ - if (val[0] == 'A') + if (val[0] == 'A') { val = get_ttymode(ssh->frontend, key); - else - val++; /* skip the 'V' */ - if (val) - do_mode(data, key, val); + if (val) { + do_mode(data, key, val); + sfree(val); + } + } else + do_mode(data, key, val + 1); /* skip the 'V' */ } } -- 2.11.0