From 2ef97049e803d4eb731b436213be2d9e5d992667 Mon Sep 17 00:00:00 2001
From: Uwe Schulzweida <uwe.schulzweida@mpimet.mpg.de>
Date: Thu, 23 Feb 2023 14:33:14 +0100
Subject: [PATCH] gribapiAddRecord: add call to grid_free() (fix memory leak)

---
 src/stream_gribapi.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/stream_gribapi.c b/src/stream_gribapi.c
index 63180fb8d..f880196d5 100644
--- a/src/stream_gribapi.c
+++ b/src/stream_gribapi.c
@@ -723,7 +723,11 @@ gribapiAddRecord(stream_t *streamptr, int param, grib_handle *gh, size_t recsize
   struct addIfNewRes gridAdded = cdiVlistAddGridIfNew(vlistID, grid, 0);
   int gridID = gridAdded.Id;
   // clang-format off
-  if (!gridAdded.isNew) Free(grid);
+  if (!gridAdded.isNew)
+    {
+      grid_free(grid);
+      Free(grid);
+    }
   else if (grid->projtype == CDI_PROJ_RLL)   gribapiDefProjRLL(gh, gridID);
   else if (grid->projtype == CDI_PROJ_LCC)   gribapiDefProjLCC(gh, gridID);
   else if (grid->projtype == CDI_PROJ_STERE) gribapiDefProjSTERE(gh, gridID);
-- 
GitLab