From e368fa330b218cefd077823619ab8f32568f6015 Mon Sep 17 00:00:00 2001 From: Johan Danielsson Date: Wed, 20 Aug 2003 16:18:49 +0000 Subject: [PATCH] set free'd poiners to NULL git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@12593 ec53bebd-3082-4978-b11e-865c3cabbd6b --- lib/asn1/der_free.c | 5 ++++- lib/asn1/gen_free.c | 8 +++++--- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/lib/asn1/der_free.c b/lib/asn1/der_free.c index 25d471d89..0c1f96de9 100644 --- a/lib/asn1/der_free.c +++ b/lib/asn1/der_free.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997 - 2001 Kungliga Tekniska Högskolan + * Copyright (c) 1997 - 2003 Kungliga Tekniska Högskolan * (Royal Institute of Technology, Stockholm, Sweden). * All rights reserved. * @@ -39,16 +39,19 @@ void free_general_string (heim_general_string *str) { free(*str); + *str = NULL; } void free_octet_string (heim_octet_string *k) { free(k->data); + k->data = NULL; } void free_oid (heim_oid *k) { free(k->components); + k->components = NULL; } diff --git a/lib/asn1/gen_free.c b/lib/asn1/gen_free.c index 0124cd88b..da17b4612 100644 --- a/lib/asn1/gen_free.c +++ b/lib/asn1/gen_free.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997 - 2000 Kungliga Tekniska Högskolan + * Copyright (c) 1997 - 2003 Kungliga Tekniska Högskolan * (Royal Institute of Technology, Stockholm, Sweden). * All rights reserved. * @@ -82,7 +82,8 @@ free_type (const char *name, const Type *t) if(m->optional) fprintf(codefile, "free(%s);\n" - "}\n",s); + "%s = NULL;\n" + "}\n", s, s); if (tag == -1) tag = m->val; free (s); @@ -100,7 +101,8 @@ free_type (const char *name, const Type *t) "}\n", name); fprintf(codefile, - "free((%s)->val);\n", name); + "free((%s)->val);\n" + "(%s)->val = NULL;\n", name, name); free(n); break; }