From f446e7ca5fee39f7fb7db171221d1cdf6d7f4f9e Mon Sep 17 00:00:00 2001 From: Simon McVittie Date: Wed, 28 Feb 2018 09:49:46 +0000 Subject: [PATCH] img test: Don't rely on using an empty ImageMagick coder name This used to work, but has been interpreted as a literal part of the filename since ImageMagick 6.9.8-3. In newer versions, there does not seem to be any way to indicate that a filename containing ':' is to be taken literally without first knowing the decoder to use. Signed-off-by: Simon McVittie --- t/img.t | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/t/img.t b/t/img.t index 6049042c2..e42d85353 100755 --- a/t/img.t +++ b/t/img.t @@ -105,8 +105,21 @@ ok(! system(@command, '--set-yaml', 'img_allowed_formats=[JPEG, PNG, svg, pdf]') sub size($) { my $filename = shift; + my $decoder; + if ($filename =~ m/\.png$/i) { + $decoder = 'png'; + } + elsif ($filename =~ m/\.jpe?g$/i) { + $decoder = 'jpeg'; + } + elsif ($filename =~ m/\.bmp$/i) { + $decoder = 'bmp'; + } + else { + die "Unexpected extension in '$filename'"; + } my $im = Image::Magick->new(); - my $r = $im->Read(":$filename"); + my $r = $im->Read("$decoder:$filename"); return "no image: $r" if $r; my $w = $im->Get("width"); my $h = $im->Get("height");