From 08c1eaa8aa0e6928bb5067df417ac785c1bce326 Mon Sep 17 00:00:00 2001 From: Stef Walter Date: Wed, 7 Apr 2004 18:46:47 +0000 Subject: Memory allocation fixes. --- lib/execute.c | 6 ++++++ lib/rlib.c | 4 ++++ 2 files changed, 10 insertions(+) (limited to 'lib') diff --git a/lib/execute.c b/lib/execute.c index 3bf3c4b..195d783 100644 --- a/lib/execute.c +++ b/lib/execute.c @@ -343,7 +343,13 @@ struct vari* _variablesNew(variables* vars, const char* name, /* Oops! */ if(!v->name || !v->value) + { + if(v->name) + free(v->name); + if(v->value) + free(v->value); return NULL; + } vars->cur++; diff --git a/lib/rlib.c b/lib/rlib.c index db84548..d973613 100644 --- a/lib/rlib.c +++ b/lib/rlib.c @@ -55,7 +55,11 @@ int rlibInit(r_stream* stream, long options) /* Init the stream for the current session */ if(!vmInit(stream)) + { + free(state); + stream->state = NULL; return R_NOMEM; + } state->options = options; -- cgit v1.2.3