Gimp/app/operations/layer-modes
Ell 2d22d0b0ff Bug 780907 - GIMP 2.9.5 layer-blending-mode Tear
Commit 9d4084c82f skips conversion and
blending of (some) transparent source and destination pixels.  When
`blend_out == blend_layer`, it banks on the fact that the alpha values
of `blend_out` would be the same as those of `blend_layer`, and hence
the same as those of `layer`; thing is, we only copy those values from
`layer` to `blend_layer` for the pixels that we *don't* skip, so this
assumption is just wrong :P  This leaves us with bogus alpha values in
`blend_out` for the skipped pixels, when the above equality holds.
For composite modes that use the alpha values of `blend_op` (aka `comp`)
even for transparent input pixels (i.e., src-atop and src-in), this may
result in artifacts.

Fix this by simply initializing the alpha values of `blend_out` for
skipped pixels unconditionally.
2017-04-04 16:48:36 -04:00
..
.gitignore
gimp-layer-modes.c app: rename "Color (HSV) (legacy)" mode to "Color (HSL) (legacy)" 2017-03-16 06:23:30 -04:00
gimp-layer-modes.h app: add GIMP_LAYER_MODE_FLAG_SUBTRACTIVE 2017-03-08 14:13:51 -05:00
gimpoperationantierase.c app: implement the different composite modes for anti-erase mode 2017-02-17 18:19:32 -05:00
gimpoperationantierase.h app: rename GimpOperationPointLayerMode to GimpOperationLayerMode 2017-01-21 21:35:52 +01:00
gimpoperationbehind.c app: implement the different composite modes for behind mode 2017-02-17 18:19:32 -05:00
gimpoperationbehind.h app: rename GimpOperationPointLayerMode to GimpOperationLayerMode 2017-01-21 21:35:52 +01:00
gimpoperationdissolve.c app: implement the different composite modes for dissolve mode 2017-02-17 18:19:32 -05:00
gimpoperationdissolve.h app: rename GimpOperationPointLayerMode to GimpOperationLayerMode 2017-01-21 21:35:52 +01:00
gimpoperationerase.c app: avoid some GCC warnings due to unhandled switch cases 2017-02-17 18:19:32 -05:00
gimpoperationerase.h app: rename GimpOperationPointLayerMode to GimpOperationLayerMode 2017-01-21 21:35:52 +01:00
gimpoperationlayermode.c Bug 780907 - GIMP 2.9.5 layer-blending-mode Tear 2017-04-04 16:48:36 -04:00
gimpoperationlayermode.h app: remove GIMP_LAYER_MODE_FLAG_WANTS_LINEAR_DATA and friends 2017-02-17 18:19:32 -05:00
gimpoperationmerge.c app: add merge layer mode 2017-03-10 18:56:32 -05:00
gimpoperationmerge.h app: add merge layer mode 2017-03-10 18:56:32 -05:00
gimpoperationnormal-sse2.c app: implement the different composite modes for normal mode 2017-02-17 18:19:32 -05:00
gimpoperationnormal-sse4.c app: implement the different composite modes for normal mode 2017-02-17 18:19:32 -05:00
gimpoperationnormal.c app: implement the different composite modes for normal mode 2017-02-17 18:19:32 -05:00
gimpoperationnormal.h app: merge the GimpLayerModeFunc into gimp-layer-modes.c's array 2017-02-15 02:25:44 +01:00
gimpoperationreplace.c app: implement the different composite modes for replace mode 2017-02-17 18:19:32 -05:00
gimpoperationreplace.h app: rename GimpOperationPointLayerMode to GimpOperationLayerMode 2017-01-21 21:35:52 +01:00
gimpoperationsplit.c app: add split layer mode 2017-03-10 18:56:32 -05:00
gimpoperationsplit.h app: add split layer mode 2017-03-10 18:56:32 -05:00
Makefile.am app: add split layer mode 2017-03-10 18:56:32 -05:00