From 3d748ebe7d900e96670ff3d455896998dfba6191 Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Thu, 20 Jan 2022 13:33:11 +0100 Subject: 5.45 --- driver/xscreensaver-getimage-file | 45 ++++++++++++++++++++++++++++++--------- 1 file changed, 35 insertions(+), 10 deletions(-) (limited to 'driver/xscreensaver-getimage-file') diff --git a/driver/xscreensaver-getimage-file b/driver/xscreensaver-getimage-file index 3a5c7f4..a22d001 100755 --- a/driver/xscreensaver-getimage-file +++ b/driver/xscreensaver-getimage-file @@ -53,7 +53,7 @@ BEGIN { eval 'use LWP::Simple;' } my $progname = $0; $progname =~ s@.*/@@g; -my ($version) = ('$Revision: 1.53 $' =~ m/\s(\d[.\d]+)\s/s); +my ($version) = ('$Revision: 1.57 $' =~ m/\s(\d[.\d]+)\s/s); my $verbose = 0; @@ -84,7 +84,7 @@ my $feed_max_age = $cache_max_age; # them, but it assumes that you gave your images sensible file extensions. # my @good_extensions = ('jpg', 'jpeg', 'pjpeg', 'pjpg', 'png', 'gif', - 'tif', 'tiff', 'xbm', 'xpm'); + 'tif', 'tiff', 'xbm', 'xpm', 'svg'); my $good_file_re = '\.(' . join("|", @good_extensions) . ')$'; # This matches file extensions that might occur in an image directory, @@ -1120,8 +1120,21 @@ sub png_size($) { } -# Given the raw body of a GIF, JPEG, or PNG document, returns the dimensions -# of the image. +# Given the raw body of an SVG document, returns the dimensions of the image. +# +sub svg_size($) { + my ($body) = @_; + return () unless ($body =~ m/^<\?xml\s/s); + return () unless ($body =~ m/