From ca9b4a4ce6a5185bc20477e439b1ba143df11bd7 Mon Sep 17 00:00:00 2001 From: Mikael Roos Date: Wed, 21 Oct 2015 00:05:14 +0200 Subject: [PATCH] webroot/img/issue117/img.php?src=issue117%2Ftri_original.png --- CImage.php | 21 +++++++++++------- ...p?src=issue117%2Ftri_original.png&w=190&nc | Bin 4552 -> 0 bytes webroot/img_config.php | 4 +++- 3 files changed, 16 insertions(+), 9 deletions(-) delete mode 100644 webroot/img/issue117/img.php?src=issue117%2Ftri_original.png&w=190&nc diff --git a/CImage.php b/CImage.php index b047ee7..e46d326 100644 --- a/CImage.php +++ b/CImage.php @@ -1438,19 +1438,19 @@ class CImage throw new Exception("Could not load image."); } + /* Removed v0.7.7 if (image_type_to_mime_type($this->fileType) == 'image/png') { $type = $this->getPngType(); $hasFewColors = imagecolorstotal($this->image); -/* Removed v0.7.7 if ($type == self::PNG_RGB_PALETTE || ($hasFewColors > 0 && $hasFewColors <= 256)) { if ($this->verbose) { $this->log("Handle this image as a palette image."); } $this->palette = true; } -*/ } + */ if ($this->verbose) { $this->log("### Image successfully loaded from file."); @@ -2276,10 +2276,11 @@ class CImage */ protected function getTargetImageExtension() { + // switch on mimetype if (isset($this->extension)) { return strtolower($this->extension); } else { - return image_type_to_extension($this->fileType); + return substr(image_type_to_extension($this->fileType), 1); } } @@ -2308,7 +2309,9 @@ class CImage is_writable($this->saveFolder) or $this->raiseError('Target directory is not writable.'); - switch($this->getTargetImageExtension()) { + $type = $this->getTargetImageExtension(); + $this->Log("Saving image as " . $type); + switch($type) { case 'jpeg': case 'jpg': @@ -2402,8 +2405,6 @@ class CImage return $this; } - $alias = $alias . "." . $this->getTargetImageExtension(); - if (is_readable($alias)) { unlink($alias); } @@ -2534,9 +2535,13 @@ class CImage $details['size'] = filesize($file); $details['colors'] = $this->colorsTotal($this->image); $details['includedFiles'] = count(get_included_files()); - $details['memoryPeek'] = round(memory_get_peak_usage()/1024/1024, 3) . " MB" ; + $details['memoryPeek'] = round(memory_get_peak_usage()/1024/1024, 3) . " MB" ; $details['memoryCurrent'] = round(memory_get_usage()/1024/1024, 3) . " MB"; - $details['memoryLimit'] = ini_get('memory_limit'); + $details['memoryLimit'] = ini_get('memory_limit'); + + if (isset($_SERVER['REQUEST_TIME_FLOAT'])) { + $details['loadTime'] = (string) round((microtime(true) - $_SERVER['REQUEST_TIME_FLOAT']), 3) . "s"; + } if ($details['mimeType'] == 'image/png') { $details['pngType'] = $this->getPngTypeAsString(null, $file); diff --git a/webroot/img/issue117/img.php?src=issue117%2Ftri_original.png&w=190&nc b/webroot/img/issue117/img.php?src=issue117%2Ftri_original.png&w=190&nc deleted file mode 100644 index 4a572be2ac109dedcc8698da182651d0d4e1078f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4552 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 'development', // 'development', 'strict' //'mode' => 'production', // 'development', 'strict' @@ -110,7 +111,8 @@ return array( /** * The name representing a dummy image which is automatically created - * and stored at the defined path. + * and stored at the defined path. The dummy image can then be used + * inplace of an original image as a placeholder. * The dummy_dir must be writable and it defaults to a subdir of the * cache directory. * Write protect the dummy_dir to prevent creation of new dummy images,