The upload in finish access can cause an infinite loop if
UTS returns FALSE in here.
Fixes fd.o bug #24246.
Signed-off-by: Dave Airlie <airlied@redhat.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
(cherry picked from commit b5fcc5553e)
Removing DGA ended up breaking any drivers calling into the old
xf86DiDGAInit function as it tried to see if DGA was already enabled
and ended up crashing if the VT wasn't completely initialized. Oops.
Also, if the driver initializes DGA itself, have the DiDGA
initialization overwrite that information as the DiDGA code will call
ReInit on mode detect.
Signed-off-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
(cherry picked from commit db98b26ee1)
The previous code was copied and in both cases incorrectly fixed
up the colormaps after resizing the visuals, this patch consolidates
the visual resize + colormaps fixups in one place. This version
also consolidates the vid allocation for the DepthPtr inside the
function.
I'm not 100% sure colormap.[ch] is the correct place for this but
visuals are mostly created in fb and I know thats not the place to
be resizing them.
Fixes fd.o bug #19470.
Signed-off-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
(cherry picked from commit 6ffda5aae7)
If -parent is given, don't open up a new window if -screen is given as well.
The commandline option -screen allows to set the depth of the embedded
Xephry instance, even though width and height are autoscaled on -parent.
This patch checks for a -screen parameter after -parent and - if one is
found - delays initializing the screen. The parent window id is stored
temporarily but re-set after a -screen argument.
The following command is thus valid:
Xephyr -parent 1234 -screen 640x480@8 -screen 1024x768
It embeds the first 8-bit screen into window 1234 and opens up a new window
for the second screen. Multiple parent arguments are possible, the screens
are embedded in-order.
X.Org Bug 24144 <http://bugs.freedesktop.org/show_bug.cgi?id=24144>
Tested-by: Vic Lee
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
(cherry picked from commit 19be992d9d)
If either width or height of DisplaySize is invalid, assume that the
configuration is invalid and use the DDC-reported values instead.
See Comment 9, Bug 9758.
http://bugs.freedesktop.org/show_bug.cgi?id=9758#c9
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Acked-by: Dave Airlie <airlied@redhat.com>
(cherry picked from commit 83023ffd09)
AddGlyph was missing the FreePicture() call that DeleteGlyph used, resulting
in a memory leak when more than one Glyph was added in a RenderAddGlyphs
request.
Since the code in AddGlyph and DeleteGlyph is identical, move into a static
function to avoid such mistakes in the future.
X.Org Bug 23286 <http://bugs.freedesktop.org/show_bug.cgi?id=23286>
(cherry picked from commit f772014c43)
When we're checking whether to build Xnest, we're comparing the
variable to auto but before it never was assigned that.
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
[Xnest was enabled to yes to increase build exposure and catch compiler
errors early. The requirements to Xnest are quite low and I expect most
developers have them, so Xnext will be enabled on most boxes. Anyone
missing those requires probably doesn't want to build Xnest anyway.]
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
(cherry picked from commit 3db28f92b0)
It's deprecated in SnowLeopard. Ben and I both have no idea what it is for. It says something about unicode input, but urxvt seems fine taking in unicode, so /shrug... bye.
The vesa driver still uses slowbcopy_frombus and slowbcopy_tobus.
This reverts commit 5ef53a94ce.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
I hadn't paid attention that the parameters order had changed, here is a
trivial patch, please apply.
Signed-off-by: Julien Cristau <jcristau@debian.org>
(cherry picked from commit 78ad6ca9a9)
For the recent mixed pixmaps changes, I failed to realize (or hit in my
testing) a problem which can occur if the driver doesn't provide an
UploadToScreen hook or provides one which can fail: There can be a crash
in exaMemcpyBox() because exaCopyDirtyToFb() passes pExaPixmap->fb_ptr to
exaCopyDirty(), but that's normally NULL with driver allocated pixmaps.
The solution is to make exaCopyDirty*() no longer rely on pExaPixmap->fb_ptr
but use pPixmap->devPrivate.ptr after PrepareAccess instead.
Fixes http://bugs.freedesktop.org/show_bug.cgi?id=24167 .
(cherry picked from commit 73ae547d5e)
This patch undefines MITSHM for dmx - we don't support the required
screen->ModifyPixmapHeaders. All undefines are moved from dmx-config to
miinitext.c, where they belong.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
(cherry picked from commit c9ec2bab2f)
This fixes input in dmx, the pointer appears at the right positions to the
clients now.
Also mark the spot where we pass in the button state as valuator to GPE
with a FIXME. (??)
Tested-by: Kevin Martin
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
(cherry picked from commit e7c2598f56)
Subpixel data in data_frac is stored as FP32.32, hence we need to get that
down again before adding it to the current value.
Reported-by: Thomas Jaeger
Tested-by: Thomas Jaeger
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
(cherry picked from commit 9bd08c690f)
This patch moves all libraries that require a specific version into a single
location instead or duplicating them across the configure.ac file.
Libraries that do not require specific versions are left where they are.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
(cherry picked from commit 43a2eb794f)
If the PrepareAccess hook fails, use the DownloadFromScreen hook to retrieve
driver pixmap contents to a system RAM copy, perform software rendering on that
and copy the results back using the UploadToScreen hook. Use the classic
migration logic to minimize transfers (which as a bonus allows slightly
cleaning up some of the existing mixed pixmap code).
This enables things that weren't possible before with driver-allocated pixmap
storage: If some (or all) GPU pixmap storage can't be mapped directly by the
CPU, this can be handled between the PrepareAccess and
DownloadFrom/UploadToScreen hooks, e.g.:
* Radeon KMS on big endian machines can fail PrepareAccess if the pixmap
requires byte-swapping and swap bytes in DownloadFrom/UploadToScreen.
* Environments where GPU and CPU don't have a shared address space at all.
Here the driver PrepareAccess hook will always fail and leave all transfers
between GPU / CPU storage to the Download/From/UploadToScreen hooks.
Drivers which can handle all pixmaps in the PrepareAccess hook should notice
little if any difference.
(cherry picked from commit 1818cbd70f)
xkbRules, xkbModel and xkbLayout are strdup'd in KdNewKeyboard, need to be
freed.
The ephyr driver strdups the name on top of the already allocated
kdrive-assigned name. Memory must be freed beforehand.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
(cherry picked from commit a9c274df5c)
The length field needs to include the bytes required for the valuators
(INT32) as well.
The reply length has the right value and since the valuator state is always
last, clients didn't notice the wrong offset.
Tested-by: Thomas Jaeger
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
(cherry picked from commit 6ee796e9bb)
This patch addresses two issues:
The check for HAVE_TSLIB = xauto can never be true, the check has been
corrected to TSLIB = xauto.
Pre-pkgconfig versions of tslib fail to be found, this patch restores the
additional AC_CHECK_LIB. However, the pgk-config check must happen before
AC_CHECK_LIB, as AC_CHECK_LIB does not seem to honour the LD_LIBRARY_PATH.
Thus, if tslib is installed outside of the default paths, AC_CHECK_LIB
fails.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Acked--by: Daniel Stone <daniel@fooishbar.org>
(cherry picked from commit 3b5bbb149d)
The components are required to be packed in the bottom of the pixel, so this
format can't fit in depth 24.
Also fix up a comment for the addition of BGRA formats.
(cherry picked from commit ce1fe8ddb4)