Browse Source

* LDV::Filebin : threat djvu and unsupported images as binary

master
Alex 'AdUser' Z 3 years ago
parent
commit
95d45dde0f
  1. 26
      lib/LDV/Filebin.pm

26
lib/LDV/Filebin.pm

@ -95,18 +95,20 @@ sub save {
bytes => $conf->{image_maxmem},
);
# query image
my $image = Imager->new(file => $upload->asset->path)
or die(Imager->errstr() . "\n");
$file->{ftype} = 'i';
$file->{fext} = $image->tags(name => 'i_format'),
$file->{res_w} = $image->getwidth,
$file->{res_h} = $image->getheight,
# make thumb
my ($th_w, $th_h) = ($conf->{thumbs_size} =~ m/(\d+)x(\d+)/oi);
my $thumb = $image->scale(xpixels => $th_w, ypixels => $th_h, type => 'min');
my $path = $self->_file_path("${time}_tn", $conf->{thumbs_ext}, 'fullpath');
$thumb->write(file => $path)
or die $thumb->errstr;
if (my $image = Imager->new(file => $upload->asset->path)) {
$file->{ftype} = 'i';
$file->{fext} = $image->tags(name => 'i_format'),
$file->{res_w} = $image->getwidth,
$file->{res_h} = $image->getheight,
# make thumb
my ($th_w, $th_h) = ($conf->{thumbs_size} =~ m/(\d+)x(\d+)/oi);
my $thumb = $image->scale(xpixels => $th_w, ypixels => $th_h, type => 'min');
my $path = $self->_file_path("${time}_tn", $conf->{thumbs_ext}, 'fullpath');
$thumb->write(file => $path)
or die $thumb->errstr;
} else {
# unsupported image, djvu, ...
}
} elsif ($file->{fmime} =~ m{^video/}o) {
$file->{ftype} = 'v';
} elsif ($file->{fmime} =~ m{^audio/}o) {

Loading…
Cancel
Save