From e7e02931acded0d7898baca54884e9e2157496a2 Mon Sep 17 00:00:00 2001 From: Luc Didry Date: Sat, 18 Nov 2017 17:37:41 +0100 Subject: [PATCH] Fix bug resulting in no EXIF tags deletion --- CHANGELOG | 3 +++ lib/Lutim/Controller.pm | 32 +++++++++++++++++--------------- 2 files changed, 20 insertions(+), 15 deletions(-) diff --git a/CHANGELOG b/CHANGELOG index f281a70..e746ae3 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,5 +1,8 @@ Revision history for Lutim +0.8.6 2017-11-18 + - Fix bug resulting in no EXIF tags deletion + 0.8.5 2017-07-09 - Fix Henny Penny font path in css diff --git a/lib/Lutim/Controller.pm b/lib/Lutim/Controller.pm index 2cf0ab4..61a7885 100644 --- a/lib/Lutim/Controller.pm +++ b/lib/Lutim/Controller.pm @@ -384,24 +384,26 @@ sub add { } - unless ((defined($keep_exif) && $keep_exif) || $mediatype eq 'image/svg+xml' || $mediatype !~ m#image/(x-)?xcf# || $mediatype ne 'image/webp') { - # Remove the EXIF tags - my $data = new IO::Scalar \$upload->slurp(); - my $et = new Image::ExifTool; + unless (defined($keep_exif) && $keep_exif) { + if ($mediatype ne 'image/svg+xml' && $mediatype !~ m#image/(x-)?xcf# && $mediatype ne 'image/webp') { + # Remove the EXIF tags + my $data = new IO::Scalar \$upload->slurp(); + my $et = new Image::ExifTool; - # Use $data in Image::ExifTool object - $et->ExtractInfo($data); - # Remove all metadata - $et->SetNewValue('*', undef); + # Use $data in Image::ExifTool object + $et->ExtractInfo($data); + # Remove all metadata + $et->SetNewValue('*', undef); - # Create a temporary IO::Scalar to write into - my $temp; - my $a = new IO::Scalar \$temp; - $et->WriteInfo($data, $a); + # Create a temporary IO::Scalar to write into + my $temp; + my $a = new IO::Scalar \$temp; + $et->WriteInfo($data, $a); - # Update the uploaded file with it's no-tags clone - $data = Mojo::Asset::Memory->new->add_chunk($temp); - $upload->asset($data); + # Update the uploaded file with it's no-tags clone + $data = Mojo::Asset::Memory->new->add_chunk($temp); + $upload->asset($data); + } } my $key;