aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Poznyakoff <gray@gnu.org>2021-03-17 16:17:41 +0200
committerSergey Poznyakoff <gray@gnu.org>2021-03-17 16:18:50 +0200
commit4870c6afe40499ff0be8d2eafb9af685979df93d (patch)
treebc54da180e950347c2564a1d44d6f07b42069ba7
parent9405ce2373ae5d64fc370c8b5ff280a92f15d01f (diff)
downloadgdbm-4870c6afe40499ff0be8d2eafb9af685979df93d.tar.gz
gdbm-4870c6afe40499ff0be8d2eafb9af685979df93d.tar.bz2
Fix memory leak in gdbmtool "next" command.
* src/gdbmtool.c (nextkey_handler): Always free the previous key buffer.
-rw-r--r--src/gdbmtool.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/gdbmtool.c b/src/gdbmtool.c
index a2fac59..c5e84d0 100644
--- a/src/gdbmtool.c
+++ b/src/gdbmtool.c
@@ -482,6 +482,7 @@ nextkey_handler (struct handler_param *param)
return_data = gdbm_nextkey (gdbm_file, key_data);
if (return_data.dptr != NULL)
{
+ free (key_data.dptr);
key_data = return_data;
datum_format (param->fp, &key_data, dsdef[DS_KEY]);
fputc ('\n', param->fp);

Return to:

Send suggestions and report system problems to the System administrator.