aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/engine-gpg.c4
-rw-r--r--src/w32-io.c1
2 files changed, 5 insertions, 0 deletions
diff --git a/src/engine-gpg.c b/src/engine-gpg.c
index a8eab3a4..ce9e3494 100644
--- a/src/engine-gpg.c
+++ b/src/engine-gpg.c
@@ -901,6 +901,10 @@ build_argv (engine_gpg_t gpg, const char *pgmname)
close_notify_handler,
gpg))
{
+ /* We leak fd_data_map and the fds. This is not easy
+ to avoid and given that we reach this here only
+ after a malloc failure for a small object, it is
+ probably better not to do anything. */
return gpg_error (GPG_ERR_GENERAL);
}
/* If the data_type is FD, we have to do a dup2 here. */
diff --git a/src/w32-io.c b/src/w32-io.c
index d00b8db3..42961e31 100644
--- a/src/w32-io.c
+++ b/src/w32-io.c
@@ -425,6 +425,7 @@ create_reader (int fd)
if (fd < 0 || fd >= MAX_SLAFD || !fd_table[fd].used)
{
TRACE_SYSERR (EIO);
+ free (ctx);
return NULL;
}
TRACE_LOG4 ("fd=%d -> handle=%p socket=%d dupfrom=%d",