XShmGetImage() crops returned image
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
xorg-server (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
[Impact]
XShmGetImage() crops the image to the absolute region (x,y)-(x+w,y+h). For example, given a window with geometry 640x480+200+300 and a 640x480 image:
XShmGetImage(
returns only the upper-left 440x180 of the window image, clearing the rest of the image to empty.
Upstream fix:
https:/
[Test Case]
- Use xwininfo to get xid for CSD window, for example, nautilus
- Use following command to take screenshot:
gst-launch-1.0 ximagesrc xid=0x6600007 num-buffers=1 ! videoconvert ! pngenc ! filesink location=out.png
- out.png should include full window screenshot
- if screenshot looks good without patch, then repeat steps moving window to different place on screen, or try to maximize and/or try with different CSD window.
- actually it is not required to test with CSD windows, bug is reproducible also with SSD windows.
[Regression Potential]
The fix only changes the implementation of XShmGetImage function, so the regression potential is limited to that function. Using gst-launch like in test case above or gnome-screenshot in GNOME Flashback session is a good way to test that there are no regressions.
[Other Info]
Upstream bug:
https:/
GNOME Flashback bug:
https:/
description: | updated |
Downloaded xorg-server_ 1.19.5. orig.tar. gz, xorg-server_ 1.19.5- 0ubuntu2. diff.gz and xorg-server_ 1.19.5- 0ubuntu2. dsc files from https:/ /launchpad. net/ubuntu/ artful/ +queue? queue_state= 1&queue_ text=.
Then built debs with: 1.19.5- 0ubuntu2. dsc
pbuilder-dist artful build xorg-server_
Then installed debs and rebooted. Bug is fixed! :)