]> git.wh0rd.org Git - nano.git/commitdiff
per Itay Perl's patch with a few additions of mine, fix various minor
authorDavid Lawrence Ramsey <pooka109@gmail.com>
Sat, 2 Dec 2006 17:22:21 +0000 (17:22 +0000)
committerDavid Lawrence Ramsey <pooka109@gmail.com>
Sat, 2 Dec 2006 17:22:21 +0000 (17:22 +0000)
memory leaks

git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@3986 35c25a1d-7b9e-4130-9fde-d3aeb78583b8

ChangeLog
src/text.c
src/winio.c

index aa9b923616271eb7bedaa2053dea9abb33a5f677..749488542bca929165b03f58d69ac71952a375c4 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -12,9 +12,15 @@ CVS code -
          consistency. (DLR)
        - Rename NANO_ALT_.* and NANO_.*ALTKEY to NANO_META_.* and
          NANO_.*METAKEY, for consistency. (DLR)
+- text.c:
+  do_verbatim_input()
+       - Fix minor memory leak. (DLR)
 - winio.c:
   parse_kbinput()
        - Add missing break. (DLR)
+       - Fix minor memory leak. (Itay Perl)
+  parse_verbatim_kbinput()
+       - Fix minor memory leak. (DLR)
   edit_draw()
        - Fix potential warnings when assigning -1 to paintlen by using
          if/else clauses instead of "?" operators. (DLR)
index 48516f74a4bfcf577158d65f00aac7dac6e98544..11ae03414bcb9c7698b5d3f9e226bd40a79672c9 100644 (file)
@@ -2446,6 +2446,8 @@ void do_verbatim_input(void)
        output[i] = (char)kbinput[i];
     output[i] = '\0';
 
+    free(kbinput);
+
     do_output(output, kbinput_len, TRUE);
 
     free(output);
index 716452459d90a6d5aa134dc2b2972aa15e436579..37d8b5748f0b7b74a8562eeb039669b8ce0aca44 100644 (file)
@@ -663,6 +663,8 @@ int parse_kbinput(WINDOW *win, bool *meta_key, bool *func_key)
     fprintf(stderr, "parse_kbinput(): kbinput = %d, meta_key = %s, func_key = %s, escapes = %d, byte_digits = %d, retval = %d\n", *kbinput, *meta_key ? "TRUE" : "FALSE", *func_key ? "TRUE" : "FALSE", escapes, byte_digits, retval);
 #endif
 
+    free(kbinput);
+
     /* Return the result. */
     return retval;
 }
@@ -1535,6 +1537,8 @@ int *parse_verbatim_kbinput(WINDOW *win, size_t *kbinput_len)
        /* Put back the first keystroke. */
        unget_input(kbinput, 1);
 
+    free(kbinput);
+
     /* Get the complete sequence, and save the characters in it as the
      * result. */
     *kbinput_len = get_key_buffer_len();