XShmGetImage returns junk/garbage in between monitors
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
xorg-server (Fedora) |
Invalid
|
Undecided
|
Unassigned | ||
xorg-server (Ubuntu) |
Invalid
|
Low
|
Unassigned |
Bug Description
In xserver 1.14.3-3ubuntu2, we've observed that on multimonitor systems, we are passed garbage when grabbing the pixels that are not on any monitor.
This does not appear to be a bug in our application - it can be easily reproduced by taking a screenshot of the whole screen using GIMP on Ubuntu 13.10 beta.
The issue is not present in 1.13.3 as shipped in Ubuntu 13.04.
What we are doing: get the geometry of the root window (XGetGeometry), create a pixbuf of the same size (XShmCreateImag
On multimonitor systems, the off-monitor portions are filling in the pixbuf with garbage (or garbled portions of other sections of the screen). That is, the monitors themselves are captured fine, but if the second monitor is smaller than the first, we used to get a black box in the dead space, where now we're getting garbage.
I'm trying to track down the source of the regression - a random stab in the dark might be f21cc327a56e3b4
Screenshot attached.