From c20f68e73d53ad3e87359d4581945a524e909df6 Mon Sep 17 00:00:00 2001 From: Bart Oldeman Date: Thu, 18 Sep 2003 20:54:21 +0000 Subject: [PATCH] Free memory if there is an error in the relocation table. git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@695 6ac86273-5f31-0410-b378-82cca8765d1b --- kernel/task.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/kernel/task.c b/kernel/task.c index 8581645..444ccbe 100644 --- a/kernel/task.c +++ b/kernel/task.c @@ -693,6 +693,11 @@ COUNT DosExeLoader(BYTE FAR * namep, exec_blk * exp, COUNT mode, COUNT fd) if (DosRWSft (fd, sizeof(reloc), (VOID FAR *) & reloc[0], XFR_READ) != sizeof(reloc)) { + if (mode != OVERLAY) + { + DosMemFree(--mem); + DosMemFree(env); + } return DE_INVLDDATA; } if (mode == OVERLAY)