From 1cf420800db206a292dc6a9f5745ef6872b4a4a3 Mon Sep 17 00:00:00 2001 From: Assar Westerlund Date: Sun, 13 Jul 1997 01:10:14 +0000 Subject: [PATCH] be careful not to malloc 0 bytes git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@2232 ec53bebd-3082-4978-b11e-865c3cabbd6b --- lib/krb5/data.c | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/lib/krb5/data.c b/lib/krb5/data.c index bea850ce4..b9393a77e 100644 --- a/lib/krb5/data.c +++ b/lib/krb5/data.c @@ -21,10 +21,13 @@ krb5_error_code krb5_data_alloc(krb5_data *p, int len) { krb5_data_free(p); - p->data = (krb5_pointer)malloc(len); - if(!p->data) - return ENOMEM; - p->length = len; + if (len) { + p->data = (krb5_pointer)malloc(len); + if(!p->data) + return ENOMEM; + } else + p->data = NULL; + p->length = len; return 0; } @@ -44,11 +47,13 @@ krb5_error_code krb5_data_copy(krb5_data *p, void *data, size_t len) { krb5_data_free(p); - p->data = (krb5_pointer)malloc(len); - if(!p->data) - return ENOMEM; - memmove(p->data, data, len); + if (len) { + p->data = (krb5_pointer)malloc(len); + if(!p->data) + return ENOMEM; + memmove(p->data, data, len); + } else + p->data = NULL; p->length = len; return 0; } -