Hi. Just a kind ping. Is any additional information needed in this patch?
Thanks! 2017-09-13 23:23 GMT-04:00 Nikolay Martynov <[email protected]>: > It looks like offsets calculated during image censoring are wrong. > This results in black (empty) images returns. > > This fix is very similar to 6c6f09aac7f1d1367a042087b7681c7fdf1d1e0f > that was applied to XGetImage > > Visually this fixes chromium/firefox window sharing in multiscreen > configurations - without this patch most of the windows on 'secodnary' > screens are black. > > This also should fix https://bugs.freedesktop.org/show_bug.cgi?id=101730. > > Signed-off-by: Nikolay Martynov <[email protected]> > --- > Xext/shm.c | 8 ++------ > 1 file changed, 2 insertions(+), 6 deletions(-) > > diff --git a/Xext/shm.c b/Xext/shm.c > index 91ea90b14..56555c7aa 100644 > --- a/Xext/shm.c > +++ b/Xext/shm.c > @@ -650,9 +650,8 @@ ProcShmGetImage(ClientPtr client) > wBorderWidth((WindowPtr) pDraw) + (int) pDraw->height) > return BadMatch; > visual = wVisual(((WindowPtr) pDraw)); > - pVisibleRegion = NotClippedByChildren((WindowPtr) pDraw); > - if (pVisibleRegion) > - RegionTranslate(pVisibleRegion, -pDraw->x, -pDraw->y); > + if (pDraw->type == DRAWABLE_WINDOW) > + pVisibleRegion = &((WindowPtr) pDraw)->borderClip; > } > else { > if (stuff->x < 0 || > @@ -715,9 +714,6 @@ ProcShmGetImage(ClientPtr client) > } > } > > - if (pVisibleRegion) > - RegionDestroy(pVisibleRegion); > - > if (client->swapped) { > swaps(&xgi.sequenceNumber); > swapl(&xgi.length); > -- > 2.11.0 > -- Martynov Nikolay. Email: [email protected] _______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: https://lists.x.org/mailman/listinfo/xorg-devel
