From 0af8ebf043775d703021c68f5d33039de1528428 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Love=20H=C3=B6rnquist=20=C3=85strand?= Date: Fri, 30 Jun 2006 21:23:19 +0000 Subject: [PATCH] (krb5_storage_from_fd): don't leak fd on malloc failure git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@17779 ec53bebd-3082-4978-b11e-865c3cabbd6b --- lib/krb5/store_fd.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/lib/krb5/store_fd.c b/lib/krb5/store_fd.c index 5e06143f0..21fa171c2 100644 --- a/lib/krb5/store_fd.c +++ b/lib/krb5/store_fd.c @@ -74,13 +74,16 @@ krb5_storage_from_fd(int fd) fd = dup(fd); if (fd < 0) return NULL; - sp = malloc(sizeof(krb5_storage)); - if (sp == NULL) + sp = malloc(sizeof(krb5_storage)); + if (sp == NULL) { + close(fd); return NULL; + } sp->data = malloc(sizeof(fd_storage)); if (sp->data == NULL) { + close(fd); free(sp); return NULL; }