On Wed, 2009-08-19 at 11:33 -0800, Christopher Howard wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> Hi. I wanted to fix trivial bug #563770. I won't bore you with all the
> details, but I suspect the problem lies somewhere in the code that is
> called when the user selects the layer mask rectangle inside the layers
> dialog. In other words, after the user adds a mask to a layer, a small
> layer mask preview box (icon?) appears to the right of the visibility
> icon and the small layer preview box, and I think the bug is being
> caused by something that occurs when the user presses this layer mask
> preview box.
> However, I am having trouble finding that code. I have been tracing
> function calls in gimplayertreeview.c, layers-actions.c,
> layer-add-mask-dialog.c, gimplayer.c, and elsewhere trying to find the
> right signal-slot connection or the relevant function but I somehow keep
> missing it or failing to recognize it.
> Could someone point me in the right direction?
In app/core/gimplayermask.c (gimp_layer_mask_real_edit_changed)
it calls gimp_image_selection_control() with GIMP_SELECTION_LAYER_ON
which ends up in app/display/gimpdisplayshell-selection.c
(gimp_display_shell_selection_control) where it calls
selection_layer_draw() without checking whether drawing of
the layer boundary is enabled or not.
The fix is to simply not call selection_layer_draw() if
the layer boundary is disabled.
Gimp-developer mailing list