From: anthony Date: Thu, 19 Apr 2012 14:40:36 +0000 (+0000) Subject: Allow +-X+-Y is geometry arguments X-Git-Tag: 7.0.1-0~5767 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=c330e15fdcd6da2170bfb6009bd65fc75d2c8530;p=imagemagick Allow +-X+-Y is geometry arguments --- diff --git a/MagickCore/geometry.c b/MagickCore/geometry.c index 3e133dae8..dba5c33b3 100644 --- a/MagickCore/geometry.c +++ b/MagickCore/geometry.c @@ -115,7 +115,7 @@ MagickExport MagickStatusType GetGeometry(const char *geometry,ssize_t *x, (void) CopyMagickString(p,p+1,MaxTextExtent); continue; } - c=(int) ((unsigned int) *p); + c=(int)*p; switch (c) { case '%': @@ -210,7 +210,6 @@ MagickExport MagickStatusType GetGeometry(const char *geometry,ssize_t *x, if (p != q) flags|=WidthValue; } - c=(*p); c=(int) ((unsigned char) *p); if ((c == 215) || (*p == 'x') || (*p == 'X')) { @@ -516,8 +515,6 @@ MagickExport MagickBooleanType IsGeometry(const char *geometry) if (geometry == (const char *) NULL) return(MagickFalse); flags=ParseGeometry(geometry,&geometry_info); - if (flags == NoValue) - flags=ParseGeometry(geometry+1,&geometry_info); /* i.e. +-4+-4 */ return(flags != NoValue ? MagickTrue : MagickFalse); } @@ -913,7 +910,7 @@ MagickExport MagickStatusType ParseGeometry(const char *geometry, /* Parse xi value. */ - if ((*p == ',') || (*p == '/') || (*p == ':')) + if ((*p == '+') || (*p == ',') || (*p == '/') || (*p == ':') ) p++; q=p; value=StringToDouble(p,&p); @@ -932,7 +929,7 @@ MagickExport MagickStatusType ParseGeometry(const char *geometry, /* Parse psi value. */ - if ((*p == ',') || (*p == '/') || (*p == ':')) + if ((*p == '+') || (*p == ',') || (*p == '/') || (*p == ':')) p++; q=p; value=StringToDouble(p,&p); @@ -952,7 +949,7 @@ MagickExport MagickStatusType ParseGeometry(const char *geometry, /* Parse chi value. */ - if ((*p == ',') || (*p == '/') || (*p == ':')) + if ((*p == '+') || (*p == ',') || (*p == '/') || (*p == ':')) p++; q=p; value=StringToDouble(p,&p);