Commit Graph

3663 Commits

Author SHA1 Message Date
Keith Packard
3c5fe1ec37 Deliver correct event when releasing keys on VT switch.
In commit 41bb9fce47, the event delivery loop
for Xinput enabled keyboards was changed and accidentally used the wrong
index variable, causing random events to be delivered when returning from VT
switch.

In addition, in commit aeba855b07,
SIGIO was blocked during delivery of these events, but not for the entire
period the xf86Events array was being used. Block SIGIO for the whole loop
to avoid other event delivery from trashing the key release events.
(cherry picked from commit aa7ed1f5f3)
(cherry picked from commit accd71bda6)
2007-09-05 14:59:16 -07:00
Eric Anholt
70ed110538 Fix server version reporting to be the server package version.
Previously, the server version reported by xdpyinfo and Xorg -version would
bear some vague resemblance to a X.Org katamari version, but in the presence
of modularization (and client-server relationships with different katamari
versions on each side) those numbers don't really make sense.  Instead, just
report the package version.

When branching a stable branch, master's version should be immediately updated
to the endpoint of the stable branch plus a snapshot of 1 (for example,
1.4.0.1 after server-1.4-branch).  The stable branch should then be changed to
RC0 at that time (1.3.99.0, for example).

This scheme was partially attempted for server 1.3, but lacked the appropriate
master updates, thus why it had to be revisited now.  While here, we can also
remove a lot of versioning complexity since everything is based on the package
version.

(cherry picked from commit 47300ed2be)
2007-09-05 13:31:50 -07:00
Alan Hourihane
b328d55372 Allow yres_virtual to be greater for some kernel fbdev drivers.
(temporary fix for older fbdev drivers)
(cherry picked from commit 87495fc706)
2007-09-04 17:44:17 -07:00
Keith Packard
b69e616513 [COMPOSITE] Composite used for pixmap population on redirect. (Bug #7447)
compNewPixmap copies bits from the parent window to the redirected child
pixmap to populate the pixmap with reasonable data. It cannot always use
CopyArea as that only works across matching depths. Use Composite when
the depths do not match.
(cherry picked from commit f98dfec79d)
2007-09-04 11:19:47 -07:00
Adam Jackson
87f9817841 [RANDR] Don't mark Xinerama as active if no crtcs are enabled. (bug #11504).
Clients expect any Xinerama-enabled screen to report at least one
monitor, but with RandR, there may not be any enabled crtcs. In this case,
tell the client that Xinerama is not active.
(cherry picked from commit 1afdf8b0a9)
2007-09-04 11:19:21 -07:00
Marius Gedminas
61460cf095 [RANDR] Compare only milliseconds of config time. (Bug #6502)
The timestamp transferred in the X protocol is a 32-bit number of
milliseconds.

The timestamp stored in the server is a structure that contains two fields:
months (!) and milliseconds.

When the server passes the config timestamp to the client, it discards the
months part and sends only the milliseconds part.

When the server receives the config timestamp from the client, it tries to
guess the "months" part by looking at the current time and then maybe adding
or
subtracting one.  The guess is wrong after the server has been running long
enough (several hours).

I have added two ErrorF calls around the 'if' statement that returns
RRSetConfigInvalidConfigTimestamp in randr/randr.c and my Xorg.0.log has
this:

  randr request got good config time: 0:-2103495671

for the first few successful xrandr calls, and

  randr request failed with RRSetConfigInvalidConfigTime: client passed
  1:-2103495671, server has 0:-2103495671

when it fails.  The server has been running for 8 and a half hours.

The obvious fix would be to ignore the months field and only compare the
milliseconds.
(cherry picked from commit 0dc2bb6101)
2007-09-04 11:18:02 -07:00
Eric Anholt
ec56c5e958 Bump version to 1.3.99.2. 2007-08-31 20:02:52 -07:00
Eric Anholt
5efc4bd7d0 Remove backend.[ch] from neomagic to fix distcheck.
(cherry picked from commit 917e3bb83a48da7618fce463cf6283be36cd9084)
2007-08-31 18:28:34 -07:00
Eric Anholt
1a125b5214 Bug #7364: Require renderproto 0.9.3 on 64-bit, and fix build with it.
(cherry picked from commit 07630d897e)
2007-08-31 15:58:16 -07:00
Eric Anholt
f499c2ea0a Bug #7186: Fix an excessive request size limitation that broke big-requests.
MAXBUFSIZE appears to be a leftover of some previous time.  Instead, just
use maxBigRequestSize when bigreqs are available (limiting buffers to ~16MB).
When bigreqs are not available, needed won't be larger than the maximum
size of a non-bigreqs request (256kB).
(cherry picked from commit ca82d4bddf)
2007-08-31 15:54:11 -07:00
Matthieu Herrb
3e9ecdcb13 Remove an extra cast.
Thou should not apply patches manually without testing.
(cherry picked from commit a66c0f1dca)
2007-08-31 10:00:10 -07:00
Otto Moerbeek
a964d54128 A high resolution device that's moving fast can potentially generate
an int overflow, making dx*dx+dy*dy negative. Now pow(negative,
non-integer) yields NaN, so you loose.  Use fp math to avoid that.
(cherry picked from commit 12d27cf33c)
2007-08-31 09:59:53 -07:00
Egbert Eich
bcd6708895 Fixing a misleading comment which could suggest a GPL violation.
The author of the int10 code looked at the VBIOS POSTing code
in DOSEMU to get some initial idea on how to POST a VBIOS.
To give credit to the DOSEMU Team for this inspiration a comment
was added to the code which could suggest that code from the
GPLed DOSEMU was directly incorporated into this code.
This patch should clearify the situation.
(cherry picked from commit 1d11e4bc4c)
2007-08-30 11:20:40 -07:00
Eric Anholt
ed001ed363 Bug #9629: Remove badly-licensed neomagic kdrive files.
Licensing issues of these files include:
- They claim to be licensed under the GPL, yet we haven't allowed that in the
  xserver repository in the past.
- They refer the user to the top of the tree for GPL license text, yet it isn't
  there.
- They claim to be derived from the (MIT-licensed) ati kdrive code, yet don't
  follow the licensing terms of those files.
(cherry picked from commit 87295b66a9)
2007-08-29 16:48:59 -07:00
Alex Deucher
5182fbf302 Add _X_EXPORT to exported functions in hw/xfree86/modes/*
Also add missing exports to hw/xfree86/loader/xf86sym.c
(cherry picked from commit 81f8b652d9)
2007-08-29 16:48:52 -07:00
Brian Paul
37954c019a glx: fix crash when freeing visuals
Don't set screen->num_vis to a value greater than the actual number of visuals.

X.Org Bug #10809 <http://bugs.freedesktop.org/show_bug.cgi?id=10809>
(cherry picked from commit ff089e6cae)
2007-08-23 12:23:01 -07:00
Dave Airlie
d34b66402c randr: fixup crtc and output destroy
if you are moving pointers, you want to move the pointers not just a byte
(cherry picked from commit 76bf3cd7b8)
2007-08-23 12:22:56 -07:00
Keith Packard
efac9c9c2e Ref count cursors used in hw/xfree86/modes code.
The multi-crtc cursor code in hw/xfree86/modes holds a reference to the
current cursor. This reference must be correctly ref counted so the cursor
is not freed out from underneath this code.
(cherry picked from commit 7dc8531548)
2007-08-23 12:22:35 -07:00
Alex Deucher
248b220b3e add xf86_crtc_clip_video_helper to xf86sym.c
(cherry picked from commit 1f6ddae003)
2007-08-23 12:22:17 -07:00
Alex Deucher
242c05e326 move intel crtc xv clipping helper to the xserver
The code is generic and can be used by any overlay-based card when
adding randr 1.2 support.  Tested on radeon.
(cherry picked from commit 53c04351c4)
2007-08-23 12:22:14 -07:00
Fredrik Höglund
dd33e936b3 EXA: Fix a couple of logic errors in exaGetPixmapFirstPixel.
The fb pointer would be left uninitialized when exaPixmapIsOffscreen
returned false. When it returned true and the pixmap was damaged,
fb would be initialized from the pixmap's devPrivate.ptr before the
exaDoMigration and exaPrepareAccess calls, at which point
devPrivate.ptr would still be pointing at offscreen memory.
(cherry picked from commit 3c448b0eb6)
2007-08-23 12:21:24 -07:00
Søren Sandmann Pedersen
ec126e29e4 Require pixman 0.9.5; Use pixman_image_set_source_clipping() to fix
bug 11620 (reported by Jens Stroebel.
(cherry picked from commit 53941c8e68)
2007-08-23 12:19:28 -07:00
Aaron Plattner
71ddf917d7 stride is in FbBits-sized chunks, but xoff is not.
Fixes corruption problems with composite rendering to redirected windows in
depth 16.
(cherry picked from commit 6a32a96d8d)
2007-08-23 12:19:25 -07:00
Aaron Plattner
7cc53ae10a Bug #12015: Use the right offsets in the dst arguments of pixman_blt.
(cherry picked from commit 32666d7722)
2007-08-23 12:19:20 -07:00
Julien Cristau
2bf6cb3074 config: fix default xkb model (pc105, not keyboard)
(cherry picked from commit 6ef4ecd826)
2007-08-21 18:19:24 +02:00
Julien Cristau
fd4dc5a98e xfree86: Fix build on Linux/alpha.
A bunch of CFLAGS had gone missing, so the build failed with errors like:
../../../../../hw/xfree86/os-support/linux/lnx_ev56.c:7:19: error: input.h: No such file or directory
../../../../../hw/xfree86/os-support/linux/lnx_ev56.c:8:24: error: scrnintstr.h: No such file or directory
(cherry picked from commit a1fe36b772)
2007-08-21 00:27:21 +02:00
Fredrik Höglund
9a747b0b81 EXA: Wrap Trapezoids to prevent excessive migration of the alpha pixmap.
miTrapezoids creates an alpha pixmap and initializes the contents
using PolyFillRect, which causes the pixmap to be moved in for
acceleration. The subsequent call to RasterizeTrapezoid won't be
accelerated by EXA, which causing the pixmap to be moved back out
again.

By wrapping Trapezoids and using ExaCheckPolyFillRect instead of
PolyFillRect to initialize the pixmap, we avoid this roundtrip.
(cherry picked from commit daee59b170)
2007-08-17 00:09:30 +02:00
Dave Jones
d37edeff99 Kdrive: fix nasty thinko in TslibEnable() 2007-08-16 10:53:35 +03:00
Alan Coopersmith
026534f945 Update pci.ids to 2007-08-15 snapshot
Remove nvidia ids in extrapci.ids that are now in pci.ids
2007-08-15 16:47:53 -07:00
Alan Coopersmith
6cef7b9611 Correct XErrorDB path and make it configurable (used by DTrace support) 2007-08-15 16:44:49 -07:00
Fredrik Höglund
0f9e89b4e3 Fix the value comparisons in the IDLETIME wakeup handler.
LessThan/GreaterThan comparisons were used in the wakeup handler,
and LessOrEqual/GreaterOrEqual in the block handler.

Change it to use LessOrEqual/GreaterOrEqual in both functions,
since this is what XSyncNegativeComparison and
XSyncPositiveComparison imply.
2007-08-14 22:47:49 +02:00
Kristian Høgsberg
6a195e816b Revert "Implement damage tracking for AIGLX."
This reverts commit 2243b30e54.  The existing
DRI interface doesn't let us get from a __DRIdrawable to the corresponding
X drawable, and thus, we can't implement AIGLX damage tracking with the
current interface.
2007-08-13 10:43:48 -04:00
Samuel Thibault
03f9da6724 xfree86: Improve default mouse handling on the Hurd
Make /dev/mouse the default device.  This makes Xorg works with empty
or missing InputDevice sections.
2007-08-12 03:08:49 +02:00
Alan Coopersmith
c5741438a3 Only use evdev drivers in Xephyr #ifdef linux 2007-08-10 16:13:55 -07:00
Alan Coopersmith
59961e47df xorgcfg needs PIXMAN_CFLAGS in order to build libc_wrapper.c 2007-08-10 16:08:41 -07:00
Kristian Høgsberg
2243b30e54 Implement damage tracking for AIGLX. 2007-08-10 15:53:05 -04:00
Eric Anholt
ff4bd3addb Fix the swapped decode of the EDID DTD h/v sync polarity fields.
As a result, we can remove the quirks that existed to flip the bits back around
for us.  This is not confirmed in all cases due to lack of bugs containing EDID
blocks associated with the quirks, but is likely true.
2007-08-08 14:39:27 -07:00
Gustavo Pichorim Boiko
2926cf1da7 [PATCH] Allocate the right number of entries for saving crtcs 2007-08-08 12:31:11 -07:00
Keith Packard
b2dcfbca24 RRScanOldConfig cannot use RRFirstOutput before output is configured.
RRFirstOutput returns the first active output, which won't be set until
after RRScanOldConfig is finished running. Instead, just use the first
output (which is the only output present with an old driver, after all).
2007-08-08 12:16:32 -07:00
Tiago Vignatti
ab3f601149 Updates some piece of the dead mouse evdev code under the new hotplug scheme.
I exported the evdev driver to Xephyr server. I'm running it using something
like:
    $ ./hw/kdrive/ephyr/Xephyr :1 -mouse evdev,,device=/dev/input/event4 -keybd \
    evdev,,device=/dev/input/event1,xkbmodel=abnt2,xkblayout=br

It also closes /#5668.
2007-08-07 23:17:32 -03:00
Tiago Vignatti
7d1a749b21 Export device path key options to be called by the command line of server. 2007-08-07 22:59:12 -03:00
Tiago Vignatti
aee3588a4a Update KdUseMsg() for completeness. 2007-08-07 22:49:07 -03:00
Daniel Stone
30259d5a4e Hotplug: HAL: Fix error handling
Don't use our DBusError for property getting, because we simply don't care:
this fixes D-Bus error spew to stderr.  Thanks Michel Dänzer for debugging
and testing.
2007-08-08 01:34:59 +03:00
Daniel Stone
aef255425a Config: HAL: Use input.xkb namespace
Use an explicit input.xkb.foo namespace, not input.xkb_foo.
2007-08-08 01:34:59 +03:00
Daniel Stone
838e59c02e configure.ac: Add $CONFIG_LIB to server libraries
Make sure all DDXes get $CONFIG_LIB.  Build-tested with Xvfb and Xdmx.
2007-08-08 01:34:59 +03:00
Keith Packard
b4193a2eee RRScanOldConfig wasn't getting crtcs set correctly
The output crtc is set by RRCrtcNotify, which is called at the end of
RRScanOldConfig. Several uses of output->crtc in this function were wrong.
2007-08-07 12:47:18 -07:00
Keith Packard
2b93cbb5f8 Decrement mode count when removing RandR output mode.
Removing an output mode without decrementing the mode count scrambles the
output mode array badly.
2007-08-07 12:47:18 -07:00
Eric Anholt
fef4c7a6f1 Fix driver build after pixman changes. 2007-08-07 09:01:24 -07:00
Tiago Vignatti
1339e57485 Fix typo. 2007-08-07 04:24:34 -03:00
Tiago Vignatti
d9ee5f3e3a Clean a little bit the code. 2007-08-07 04:22:26 -03:00