From: Cristy Date: Fri, 14 Jul 2017 11:05:02 +0000 (-0400) Subject: ... X-Git-Tag: 7.0.6-1~17 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=f94b084a6413883298304c2323e7082718af54f1;p=imagemagick ... --- diff --git a/PerlMagick/Magick.xs b/PerlMagick/Magick.xs index 9aac8c9f3..4664d1498 100644 --- a/PerlMagick/Magick.xs +++ b/PerlMagick/Magick.xs @@ -8221,8 +8221,15 @@ Mogrify(ref,...) case 22: /* Roll */ { if (attribute_flag[0] != 0) - flags=ParsePageGeometry(image,argument_list[0].string_reference, - &geometry,exception); + { + flags=ParsePageGeometry(image,argument_list[0].string_reference, + &geometry,exception); + if ((flags & PercentValue) != 0) + { + geometry.x*=(double) image->columns/100.0; + geometry.y*=(double) image->rows/100.0; + } + } if (attribute_flag[1] != 0) geometry.x=argument_list[1].integer_reference; if (attribute_flag[2] != 0) diff --git a/PerlMagick/quantum/quantum.xs.in b/PerlMagick/quantum/quantum.xs.in index f59be652e..c01899032 100644 --- a/PerlMagick/quantum/quantum.xs.in +++ b/PerlMagick/quantum/quantum.xs.in @@ -8218,8 +8218,15 @@ Mogrify(ref,...) case 22: /* Roll */ { if (attribute_flag[0] != 0) - flags=ParsePageGeometry(image,argument_list[0].string_reference, - &geometry,exception); + { + flags=ParsePageGeometry(image,argument_list[0].string_reference, + &geometry,exception); + if ((flags & PercentValue) != 0) + { + geometry.x*=(double) image->columns/100.0; + geometry.y*=(double) image->rows/100.0; + } + } if (attribute_flag[1] != 0) geometry.x=argument_list[1].integer_reference; if (attribute_flag[2] != 0)