Subject: Re: getch() memory leak fix
To: <>
From: Jun-ichiro itojun Hagino <itojun@iijlab.net>
List: tech-userlevel
Date: 08/01/2000 00:56:08
>	I found the following diff in my local tree.  it it still
>	necessary?

itojun


Index: getch.c
===================================================================
RCS file: /cvsroot/basesrc/lib/libcurses/getch.c,v
retrieving revision 1.29
diff -c -r1.29 getch.c
*** getch.c	2000/05/25 06:46:26	1.29
--- getch.c	2000/07/31 15:54:06
***************
*** 379,384 ****
--- 379,385 ----
  	size_t limit;
  	key_entry_t *tmp_key;
  	keymap_t *current;
+ 	char *cp;
  #ifdef DEBUG
  	int k;
  #endif
***************
*** 396,402 ****
  	for (i = 0; i < num_tcs; i++) {
  		p = entry;
  		limit = 1023;
! 		if (t_getstr(_cursesi_genbuf, tc[i].name, &p, &limit) != NULL) {
  			current = base_keymap;	/* always start with
  						 * base keymap. */
  			length = (int) strlen(entry);
--- 397,405 ----
  	for (i = 0; i < num_tcs; i++) {
  		p = entry;
  		limit = 1023;
! 		cp = t_getstr(_cursesi_genbuf, tc[i].name, &p, &limit);
! 		if (cp != NULL) {
! 			free(cp);
  			current = base_keymap;	/* always start with
  						 * base keymap. */
  			length = (int) strlen(entry);