http://jsbin.com/yesati/
http://jsbin.com/gukecow/
It is similar to the "nine-piece glitch" described in https://crbug.com/678669
In Skia there is no concept of layer size (the bounds passed to saveLayer serves only an optimization hint), so everything in the clip region outside of the bounding box of the mask are cleared.
In compositing code path, the mask layer is sized to whatever size m_graphicsLayer is (i.e. visual overflow of current element excluding compositing children). So when there is composited visual overflow, clamping happens with mask texture coordinate.
I think this is idiotic. It is pointless to paint/raster outside of the mask bounding box just to have it cleared later. We should always apply a hard clip with the size of the mask. For SPv1 I won't open the can of worm, but for SPv2 I think creating a clip node in addition to the effect node is the right approach to it.
Comment 1 by trchen@chromium.org
, Mar 7 2018