If a view that produces multiple gl draw calls is used as a MaskView mask, it will increment the stencil buffer multiple times and the stencil test will break.
This can be triggered by a nested mask, where the child MaskView has an ImageView (because it calls both BaseView::draw() and gl::draw(mTexture, ...)) or a BaseView with multiple children as a mask.
If a view that produces multiple gl draw calls is used as a
MaskView
mask, it will increment the stencil buffer multiple times and the stencil test will break.This can be triggered by a nested mask, where the child
MaskView
has anImageView
(because it calls bothBaseView::draw()
andgl::draw(mTexture, ...)
) or aBaseView
with multiple children as a mask.