Page MenuHomePhabricator

D7604.diff

diff --git a/src/applications/files/PhabricatorImageTransformer.php b/src/applications/files/PhabricatorImageTransformer.php
--- a/src/applications/files/PhabricatorImageTransformer.php
+++ b/src/applications/files/PhabricatorImageTransformer.php
@@ -294,6 +294,15 @@
$lower_text,
$mime_type) {
$img = imagecreatefromstring($data);
+
+ // Some PNGs have color palettes, and allocating the dark border color
+ // fails and gives us whatever's first in the color table. Copy the image
+ // to a fresh truecolor canvas before working with it.
+
+ $truecolor = imagecreatetruecolor(imagesx($img), imagesy($img));
+ imagecopy($truecolor, $img, 0, 0, 0, 0, imagesx($img), imagesy($img));
+ $img = $truecolor;
+
$phabricator_root = dirname(phutil_get_library_root('phabricator'));
$font_root = $phabricator_root.'/resources/font/';
$font_path = $font_root.'tuffy.ttf';

File Metadata

Mime Type
text/x-diff
Storage Engine
amazon-s3
Storage Format
Raw Data
Storage Handle
phabricator/2d/nw/33vw7jveyqbszy4u
Default Alt Text
D7604.diff (911 B)

Event Timeline