From fa92ef32b7d850e96f01ff236c1b3f9ebfc0c092 Mon Sep 17 00:00:00 2001 From: ocean Date: Tue, 31 Aug 2004 09:24:36 +0000 Subject: * ext/tk/tkutil.c (cbsubst_init): fix memory leak * ext/tk/tkutil.c (cbsubst_get_all_subst_keys): fix SEGV git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6843 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 6 ++++++ ext/tk/tkutil.c | 3 +-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 80a0b15bda..00add5dbec 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Tue Aug 31 18:24:04 2004 Hirokazu Yamamoto + + * ext/tk/tkutil.c (cbsubst_init): fix memory leak + + * ext/tk/tkutil.c (cbsubst_get_all_subst_keys): fix SEGV + Tue Aug 31 16:04:22 2004 Hidetoshi NAGAI * ext/tcltklib/tcltklib.c (ip_delete): when a tcltkip is deleted, diff --git a/ext/tk/tkutil.c b/ext/tk/tkutil.c index 37af36b049..b3e79430dd 100644 --- a/ext/tk/tkutil.c +++ b/ext/tk/tkutil.c @@ -938,7 +938,6 @@ cbsubst_init() inf->size = 0; - inf->key = ALLOC_N(char, 1); inf->key = ALLOC_N(char, 1); inf->key[0] = '\0'; @@ -1028,7 +1027,7 @@ cbsubst_get_all_subst_keys(self) struct cbsubst_info, inf); len = strlen(inf->key); - buf = ALLOC_N(char, 3*len); + buf = ALLOC_N(char, 3*len + 1); ptr = buf; for(i = 0; i < len; i++) { *(ptr++) = '%'; -- cgit v1.2.3