]> _ Git - cubeextranet.git/commitdiff
fix #2461 @1.5
authorvincent@cubedesigners.com <vincent@cubedesigners.com@f5622870-0f3c-0410-866d-9cb505b7a8ef>
Thu, 20 Dec 2018 15:42:48 +0000 (15:42 +0000)
committervincent@cubedesigners.com <vincent@cubedesigners.com@f5622870-0f3c-0410-866d-9cb505b7a8ef>
Thu, 20 Dec 2018 15:42:48 +0000 (15:42 +0000)
inc/ws/Util/class.ws.tools.php

index dfb2dbca2058b6385a1da078b35886e4fd41d11e..72a6303aaa98a2ff2e99d05991ffb952e7fa4e35 100644 (file)
@@ -153,10 +153,12 @@ class wsTools
 
                $baseoptimized = str_replace('%s', '', $optimized);
 
+               $expireoriginallimit = max(filemtime($original), filemtime(__FILE__));
+
                $notexists = !file_exists($baseoptimized);
                if (!$notexists) {
                        $cleanerexpired = filemtime($baseoptimized) < filemtime('/usr/local/bin/svgcleaner');
-                       $originalexpired = filemtime($baseoptimized) < filemtime($original);
+                       $originalexpired = filemtime($baseoptimized) < $expireoriginallimit;
                } else {
                        $cleanerexpired = false;
                        $originalexpired = false;
@@ -174,6 +176,7 @@ class wsTools
                                $svg = file_get_contents($original);
                        }
                        $svg = substr_replace($svg, ' preserveAspectRatio="none" ', 5, 0);
+
                        $fname = $baseoptimized;
                        file_put_contents($fname, $svg);
 
@@ -181,6 +184,7 @@ class wsTools
                                foreach ($resolutions as $resolution) {
                                        self::$_r = $resolution;
                                        $osvg = preg_replace_callback('|\<image([^>]*)\>|', 'wsTools::optimizeRaster', $svg);
+                                       $osvg = preg_replace('/^<svg[^>]*>/', '$0<rect width="100%" height="100%" fill="white" />', $osvg);
                                        $ofname = sprintf($optimized, '-' . $resolution);
                                        file_put_contents($ofname, $osvg);
                                }