Issue #1668 - Smudge Tool - Wrong colors when painting on an image ...

... with a color profile other than the gimp built-in.

Remove the separate alpha-channel copy in
gimp_image_color_profile_srgb_to_pixel().  We no longer need it,
since GimpColorTransform already takes care of that itself.

We used babl_process() to copy the alpha, which would also
transform the input color from R'G'B' to the output color space.
When the same buffer was used for both input and output, this call
would overwrite the input to the subsequent
gimp_color_transform_process_pixels() call; when the output color
space was different than R'G'B', this meant we'd pass the input to
gimp_color_transform_process_pixels() in the wrong color space,
producing wrong results.  This was the case when converting the
foreground color for use with the smudge tool.
This commit is contained in:
Ell 2018-06-17 13:10:11 -04:00
parent 3c608c6ba7
commit e58e2ec5dc
1 changed files with 0 additions and 3 deletions

View File

@ -604,9 +604,6 @@ gimp_image_color_profile_srgb_to_pixel (GimpImage *image,
if (transform)
{
/* for the alpha channel */
gimp_rgba_get_pixel (color, pixel_format, pixel);
gimp_color_transform_process_pixels (transform,
babl_format ("R'G'B'A double"),
color,