From 3cd3aeebe20fa078b9b4568f8ee3b49cdcfe5c2e Mon Sep 17 00:00:00 2001 From: Dirk Lemstra Date: Fri, 3 Nov 2017 07:51:04 +0100 Subject: [PATCH] Fixed acquire and release of resources. --- MagickCore/matrix.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/MagickCore/matrix.c b/MagickCore/matrix.c index be0b32eb0..6b369b068 100644 --- a/MagickCore/matrix.c +++ b/MagickCore/matrix.c @@ -263,7 +263,6 @@ MagickExport MatrixInfo *AcquireMatrixInfo(const size_t columns, return(DestroyMatrixInfo(matrix_info)); } matrix_info->type=DiskCache; - (void) AcquireMagickResource(MemoryResource,matrix_info->length); matrix_info->file=AcquireUniqueFileResource(matrix_info->path); if (matrix_info->file == -1) return(DestroyMatrixInfo(matrix_info)); @@ -272,14 +271,15 @@ MagickExport MatrixInfo *AcquireMatrixInfo(const size_t columns, { status=SetMatrixExtent(matrix_info,matrix_info->length); if (status != MagickFalse) + matrix_info->elements=(void *) MapBlob(matrix_info->file,IOMode,0, + (size_t) matrix_info->length); + if (matrix_info->elements != NULL) { - matrix_info->elements=(void *) MapBlob(matrix_info->file,IOMode,0, - (size_t) matrix_info->length); - if (matrix_info->elements != NULL) - matrix_info->type=MapCache; - else - RelinquishMagickResource(MapResource,matrix_info->length); + RelinquishMagickResource(DiskResource,matrix_info->length); + matrix_info->type=MapCache; } + else + RelinquishMagickResource(MapResource,matrix_info->length); } } return(matrix_info); -- 2.40.0