Commit 2d4d387de for imagemagick.org
commit 2d4d387deb0a38e5921354cc7f01338b59cdef38
Author: Dirk Lemstra <dirk@lemstra.org>
Date: Wed Jul 15 08:14:38 2026 +0200
Small memory allocation optimization.
diff --git a/MagickCore/utility.c b/MagickCore/utility.c
index f06cfeaad..50c632bea 100644
--- a/MagickCore/utility.c
+++ b/MagickCore/utility.c
@@ -1291,31 +1291,33 @@ MagickExport void GetPathComponent(const char *path,PathType type,
p=component+strlen(component)-1;
if ((strlen(component) > 2) && (*p == ']'))
{
- ExceptionInfo *exception = AcquireExceptionInfo();
- char *literal = (char *) GetImageRegistry(StringRegistryType,
- "filename:literal",exception);
q=strrchr(component,'[');
- if ((q != (char *) NULL) &&
- ((IsStringTrue(literal) == MagickFalse) ||
- (IsPathAccessible(path) == MagickFalse)))
+ if (q != (char *) NULL)
{
- /*
- Look for scene specification (e.g. img0001.pcd[4]).
- */
- *p='\0';
- if ((IsSceneGeometry(q+1,MagickFalse) == MagickFalse) &&
- (IsGeometry(q+1) == MagickFalse))
- *p=']';
- else
+ ExceptionInfo *exception = AcquireExceptionInfo();
+ char *literal = (char *) GetImageRegistry(StringRegistryType,
+ "filename:literal",exception);
+ exception=DestroyExceptionInfo(exception);
+ if ((IsStringTrue(literal) == MagickFalse) ||
+ (IsPathAccessible(path) == MagickFalse))
{
- subimage_length=(size_t) (p-q);
- subimage_offset=(size_t) (q-component+1);
- *q='\0';
+ /*
+ Look for scene specification (e.g. img0001.pcd[4]).
+ */
+ *p='\0';
+ if ((IsSceneGeometry(q+1,MagickFalse) == MagickFalse) &&
+ (IsGeometry(q+1) == MagickFalse))
+ *p=']';
+ else
+ {
+ subimage_length=(size_t) (p-q);
+ subimage_offset=(size_t) (q-component+1);
+ *q='\0';
+ }
}
+ if (literal != (char *) NULL)
+ literal=DestroyString(literal);
}
- if (literal != (char *) NULL)
- literal=DestroyString(literal);
- exception=DestroyExceptionInfo(exception);
}
}
magick_length=0;