summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2012-07-02configure.ac: Version bump to 1.12.2.902 (1.12.3 RC2)xorg-server-1.12.2.902Peter Hutterer1-2/+2
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2012-07-01randr: Don't recurse into mieqProcessInputEvents() from RRTellChanged().Andy Ritger1-1/+1
Call UpdateCurrentTimeIf(), not UpdateCurrentTime(), from RRTellChanged(). The latter calls ProcessInputEvents(), which can trigger a recursion into mieqProcessInputEvents(). The former omits the call to ProcessInputEvents(). Signed-off-by: Andy Ritger <aritger@nvidia.com> Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com> Signed-off-by: Keith Packard <keithp@keithp.com> (cherry picked from commit dae317e7265007b38012244722e3b3a06e904ed5)
2012-07-01dix: if the scroll valuator reaches INT_MAX, reset to 0Peter Hutterer1-6/+34
Too much scrolling down may eventually trigger an overflow of the valuator. If this happens, reset the valuator to 0 and skip this event for button emulation. Clients will have to figure out a way to deal with this, but a scroll event from (close to) INT_MAX to 0 is a hint of that it needs to be ignored. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Chase Douglas <chase.douglas@canonical.com> (cherry picked from commit 54476b5e4461ff523e935961affabcf0de12c556)
2012-06-25Xi: fix XITouchClass sourceid assignmentPeter Hutterer1-1/+1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Chase Douglas <chase.douglas@canonical.com> (cherry picked from commit 72cfc1a097dc1e09d2cd9415ef7855a2cef92351)
2012-06-20xkb: warn if XKB SlowKeys have been automatically enabledPeter Hutterer1-2/+7
Slow keys are enabled when the XKB AccessX features are generally enabled (ctrls->enabled_ctrls & XkbAccessXKeysMask) and either shift key is held for 8 seconds. For the unsuspecting user this appears as if the keyboard suddenly stops working. Print a warning to the log, so we can later tell them "told you so". Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Dan Nicholson <dbn.lists@gmail.com> (cherry picked from commit ff41753b1bee414b16c0f1e8d183776e87c94065)
2012-06-15configure.ac: Version bump to 1.12.2.901 (1.12.3 RC1)xorg-server-1.12.2.901Peter Hutterer1-1/+1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2012-06-05Xi: make stub DeleteInputDeviceRequest call RemoveDeviceJulien Cristau1-0/+1
DeleteInputDeviceRequest is called from CloseDownDevices on reset, so call RemoveDevice to avoid leaking devices in Xvfb/Xnest/Xwin. Signed-off-by: Julien Cristau <jcristau@debian.org> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit e4153c1d9138ed40de1c615525066a0f5bb599dc)
2012-06-05xfree86: fix mouse wheel support for DGA clientsMarcin Slusarz1-16/+78
xf86-input-evdev (since "smooth scrolling" support was added) can send mouse motion and wheel events in one batch, so we need to handle it properly. Otherwise mouse wheel events which come with motion events are lost and separate mouse wheel events are handled through non-DGA path. Signed-off-by: Marcin Slusarz <marcin.slusarz@gmail.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 2d4fda4b09e67e47d3e6fc4743fc6e81bfe40f28)
2012-06-05dix: undo transformation for missing valuators (#49347)Peter Hutterer1-4/+21
last.valuators contains the transformed valuators of the device. If the device submits events with x/y missing, we need to get that from last.valuators and undo the transformation to that axis. X.Org Bug 49347 <http://bugs.freedesktop.org/show_bug.cgi?id=49347> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Chase Douglas <chase.douglas@canonical.com> (cherry picked from commit 749a593e49adccdf1225be28a521412ec85333f4)
2012-06-05xkb: Allocate size_syms correctly when width of a type increasesSiddhesh Poyarekar1-2/+4
The current code seems to skip syms with width less than type->num_levels when calculating the total size for the new size_syms. This leads to less space being allocated than necessary during the next phase, which is to copy over the syms to the new location. This results in an overflow leading to a crash. Signed-off-by: Siddhesh Poyarekar <siddhesh.poyarekar@gmail.com> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 42ae2e8199fe875319978249963de7499607988b)
2012-06-05Fix crash for motion events from devices without valuatorsMichal Suchanek1-1/+1
A WarpPointer request may trigger a motion event on a device without valuators. That request is ignored by GetPointerEvents but during smooth scroll emulation we dereference dev->valuators to get the number of axes. Break out early if the device doesn't have valuators. Signed-off-by: Michal Suchanek <hramrach@gmail.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 88c767edb01ed7efb19ffe3a453e16107b27130b)
2012-05-29Convert sbusPaletteKey to latest DevPrivate APIAlan Coopersmith1-2/+6
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Mark Kettenis <kettenis@openbsd.org> Reviewed-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit 96e0ab54962ab59f03275a098ee02c1f0f86b94e)
2012-05-29cvt man page should use Hz, not kHz, for vertical refresh rateAlan Coopersmith1-2/+2
https://bugs.freedesktop.org/show_bug.cgi?id=48311 Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Julien Cristau <jcristau@debian.org> (cherry picked from commit c3180a74a4fc6304bcfe676e3285d707874a9fea)
2012-05-29Undocument Font Module loadingAlan Coopersmith1-20/+0
Code was deleted in commit affec10635343668839994ea2bac16c1d4524200 Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Adam Jackson <ajax@redhat.com> (cherry picked from commit 5a3a98fcb799c2ac8fa7494645ad9030f1cac837)
2012-05-29Undocument mandatory loadable modulesAlan Coopersmith1-5/+0
The code to implement was deleted when BaseModules[] was emptied by the replacement of the "pcidata" module with libpciaccess calls in commit 46f55f5dead5d70cdff30531d80a72f6be042315. Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Adam Jackson <ajax@redhat.com> (cherry picked from commit afcb7ba24ebd9968d48a192df438e7f1c0ecb770)
2012-05-29XQuartz: Avoid a race in initialization of darwinPointerJeremy Huddleston1-8/+10
http://xquartz.macosforge.org/trac/ticket/579 Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com> (cherry picked from commit acdc4f54ee5784d26c251ff8c941b4360ae80e9b)
2012-05-29XQuartz: Provide fls implementation for TigerJeremy Huddleston1-0/+14
Regression-from: 30623d6ff7bca223f9e1a825e86bd317eef8bf16 Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com> (cherry picked from commit f5fc5334116ad2b0c8930ac68c52bf0f7a2f1417)
2012-05-29XQuartz: Tiger build fixJeremy Huddleston1-0/+6
http://trac.macports.org/ticket/34364 Regression-from: 662d41acdde1dcb9774fbe4054e251c708acaffe Reported-by: Peter Dyballa <Peter_Dyballa@Freenet.DE> Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com> (cherry picked from commit e0097ce9719f9b0aeccf7102630c0299f8acdf93)
2012-05-29XQuartz: Workaround an SDK bug on Leopard/x86_64Jeremy Huddleston1-0/+6
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com> (cherry picked from commit 4acbaa3027d89728ed932616f6ef66d93537b101)
2012-05-29configure.ac: Version bump to 1.12.2xorg-server-1.12.2Jeremy Huddleston1-2/+2
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2012-05-19configure.ac: Version bump to 1.12.1.902 (1.12.2 RC2)xorg-server-1.12.1.902Jeremy Huddleston1-2/+2
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2012-05-17Merge remote-tracking branch 'whot/server-1.12-branch' into server-1.12-branchJeremy Huddleston4-63/+123
2012-05-14Report touch emulated buttons in XIQueryPointer for XI 2.1 and earlierChase Douglas1-0/+14
XInput 2.1 and earlier clients do not know about touches. We must report touch emulated button presses for these clients. For later clients, we only report true pointer button presses. Signed-off-by: Chase Douglas <chase.douglas@canonical.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit ee542b85590814ee25369babce1ad14feeb137af)
2012-05-14Report logical button state in ProcXIQueryPointerChase Douglas1-9/+4
Physical button state is usually meaningless to an X client. Signed-off-by: Chase Douglas <chase.douglas@canonical.com> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 1e7b500a8e1d79b91a4e857a2da06194efe8cf69)
2012-05-14os/log: refactor loggingDaniel Kurtz1-51/+46
It is not safe to ever use an arbitrary (possibly user supplied) string as part of the format for a *sprintf() call. For example: 1. Name a Bluetooth keyboard "%n%n%n%n%n%n%n%n" 2. Pair it with a computer running X and try to use it 3. X is not happy when trying to do the following in xf86-input-evdev: xf86IDrvMsg(pInfo, X_CONFIG, "Device: \"%s\"\n", device); because LogVHdrMessageVerb() has put the %n from the device name into a format string of the form: "evdev: %n%n%n%n%n%n%n%n: Device: \"%s\"\n" Instead, build up a log message in place by appending successive formatted strings by sncprintf'ing to the end of the previous. Signed-off-by: Daniel Kurtz <djkurtz@chromium.org> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit c91d00e0f330b9de604068e1bfcb0a307096434f)
2012-05-14os/log: only write timestamp if a message is actually written to logfileDaniel Kurtz1-9/+9
The current code will write a timestamps into the logFile whenever the last message ended with a '\n' - even if the verb for that timestamp is at too high a level. This timestamp will sit there with no matching message until the next call to LogVWrite with a valid verb. In other words, in some cases, timestamps in the X.org.log are for some completely unrelated message that was previously ignored due to insufficient verbosity, and not for the message that appears next to it in the log file. We keep the current policy which appears to be to only apply timestamps if a message is actually written to a log file. That is, no timestamps on stderr, or in the mem buffer. Therefore, the timestamp stringification is moved to the conditional where it is used. Since logging uses a fixed length buffer, this patch also forces a '\n' whenever a buffer is terminated due to a too-long write request. This allows the newline detection to work even on overflow, and also cleans up the log a bit in the overflow case. Signed-off-by: Daniel Kurtz <djkurtz@chromium.org> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 6ce0eac4f8a05f6d7401445cab95027709d3a479)
2012-05-14os/xprintf: add Xvscnprintf and XscnprintfDaniel Kurtz2-0/+56
Normal snprintf() usually returns the number of bytes that would have been written into a buffer had the buffer been long enough. The scnprintf() variants return the actual number of bytes written, excluding the trailing '\0'. Signed-off-by: Daniel Kurtz <djkurtz@chromium.org> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 5c2e2a164d615ab06be28a663734e782614b5cc7)
2012-05-14os/log: trivial cleanupsDaniel Kurtz1-2/+2
* space->tab * remove comment that doesn't make any sense Signed-off-by: Daniel Kurtz <djkurtz@chromium.org> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit c30862879d2c766519780bb7f353f35edf0daa9b)
2012-05-10Revert "dix: when disabling a device, release all buttons and keys"Jeremy Huddleston1-2/+0
This reverts commit 90299556db24543bb7365e8c2897deca3aa219e7. The commit being reverted triggered a segfault on server shutdown when a device posts raw events after the root windows are forced to NULL. https://lists.debian.org/debian-x/2012/05/msg00240.html Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2012-05-10dmx: Annotate dmxlog.c with _X_ATTRIBUTE_PRINTF and _X_NORETURNMichal Suchanek2-10/+22
and fix resulting printf warning in dmxLogVisual Signed-off-by: Michal Suchanek <hramrach@gmail.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit d662fa2450856777b59c4b62b912395a8bfd52fd)
2012-05-10dix: indentation fixPeter Hutterer1-2/+2
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit ebf214876a4885a98ded4f5525925b69005fae05)
2012-05-10dix: don't BUG_WARN for button events from button-only deviceDaniel Kurtz1-1/+1
Events from button-only devices still need coordinates, and they get them from scale_to_desktop(). Therefore, a dev without valuators is not a bug. However, a dev with valuators, but less than two of them still is a bug. This was noticed when unplugging a "Creative Technology SB Arena Headset", which has some BTNs and some KEYs, but no REL or ABS valuators. It emits [BTN_3] = 0 on unplug, which would trigger the BUG_WARN. Signed-off-by: Daniel Kurtz <djkurtz@chromium.org> Reviewed-by: Chase Douglas <chase.douglas@canonical.com> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit c5a45b0f7658c77725adce2b64a0fbd62f208328)
2012-05-10hw/xfree86: Re-indent xf86vmode.cKeith Packard1-346/+480
This is the result of re-running the 'x-indent.sh' script over xf86vmode.c to clean up the disaster caused by broken syntax in the file. Signed-off-by: Keith Packard <keithp@keithp.com> (cherry picked from commit 9779b904c7c0b49c74054c22c420012c40595cdc)
2012-05-10hw/xfree86: Spurious ');' in xf86vmode.c messed up indentation badlyKeith Packard1-1/+1
Inside the unfinished XF86VIDMODE_EVENTS #ifdef block the function definition for xf86VidModeNotifyEvent had an extra ');' before the prototype argument declarations. This was harmless for the compiler as the code never gets used, but completely messed up the file re-indentation. This patch removes the spurious characters in preparation for re-indenting the file. Signed-off-by: Keith Packard <keithp@keithp.com> (cherry picked from commit 592bd0ae2b60cd6f6afd3efc40f5f659b12900b4)
2012-05-07configure.ac: Bump to 1.12.1.901 (1.12.2 RC1)xorg-server-1.12.1.901Jeremy Huddleston1-2/+2
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2012-05-02XQuartz: Make sure we tell startx the correct server binary to use in our ↵Jeremy Huddleston1-1/+1
fallback path With multiple servers installed, we can't be certain if X is Xorg or Xquartz Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com> (cherry picked from commit 93d6ba5b711cbd3f502d83e54c9739856d2e6f2a)
2012-05-03dix: when disabling a device, release all buttons and keysPeter Hutterer1-0/+2
A suspend-induced device disable may happen before the device gets to see the button release event. On resume, the server's internal state still has some buttons pressed, causing inconsistent behaviour. Force the release and the matching events to be sent to the client. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Chase Douglas <chase.douglas@canonical.com> (cherry picked from commit f3410b97cf9b48a47bee3d15d232f8a88e75f4ef) Conflicts: dix/devices.c
2012-05-03dix: don't emulate scroll events for non-existing axes (#47281)Peter Hutterer1-0/+3
Test case: - create a device with REL_HWHEEL and ABS_X and ABS_Y. evdev 2.7.0 will set that up as device with 1 relative axis - move pointer to VGA1 - xrandr --output VGA1 --off Warps the pointer to the new spot and calls GPE with the x/y mask bits set. When running through the loop to check for scroll event, this overruns the axes and may try to emulate scroll events based on random garbage in the memory. If that memory contained non-zero for the scroll type but near-zero for the increment field, the server would hang in an infinite loop. This was the trigger for this suggested, never-merged, patch here: http://patchwork.freedesktop.org/patch/9543/ X.Org Bug 47281 <http://bugs.freedesktop.org/show_bug.cgi?id=47281> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Chase Douglas <chase.douglas@canonical.com> (cherry picked from commit af88b43f9e604157b74270d609c08bdfa256a792)
2012-05-03os: make timers signal-safePeter Hutterer1-2/+16
If TimerSet() is called from a signal handler (synaptics tap handling code) may result in list corruption if we're currently inside TimerSet(). See backtrace in https://bugzilla.redhat.com/show_bug.cgi?id=814869 Block signals for all list manipulations in the timers. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Chase Douglas <chase.douglas@canonical.com> (cherry picked from commit 08962951de969b9d8c870af8b6e47303dc0decfd)
2012-05-03TouchListenerAcceptReject: Warn and return early on bad listener indexChase Douglas1-0/+5
Signed-off-by: Chase Douglas <chase.douglas@canonical.com> Reviewed-by: Bryce Harrington <bryce@canonical.com> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 5c361d59c5031d9b3f7f9093a52d2b1ff4d9ae5f)
2012-04-26xfree86: workaround crash on closeMichal Suchanek1-3/+8
Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=41653 Signed-off-by: Michal Suchanek <hramrach@gmail.com> Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com> Tested-by: Knut Petersen <Knut_Petersen@t-online.de> (cherry picked from commit fa6dddc6ce51c1b7a43fb379fb2a19550f6c8683)
2012-04-26glapi: Correct size of allocated _glapi_table structJonas Maebe1-1/+1
The __glapi_gentable_set_remaining_noop() routine treats the _glapi_struct as an array of _glapi_get_dispatch_table_size() pointers, so we have to allocate _glapi_get_dispatch_table_size()*sizeof(void*) bytes rather than sizeof(struct _glapi_struct) bytes. Signed-off-by: Jonas Maebe <jonas.maebe@elis.ugent.be> Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com> (cherry picked from commit adcb48a29dcb3f32ff570551de4b014775c1e147)
2012-04-26XQuartz: darwinPointer now sends both absolute and relative motionJeremy Huddleston4-52/+56
This should hopefully help out wine clients that were continuing to have issues after the earlier changes. http://xquartz.macosforge.org/trac/ticket/548 Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com> (cherry picked from commit e34519e525559b01a63d26639f13f0487468de28)
2012-04-26XQuartz: Add a hack to better handle clicky wheel scroll miceJeremy Huddleston1-2/+109
We loose information from AppKit being in our way. Before adopting smooth scrolling, we always rounded-up the number of scroll button clicks per NSEvent. Now, the scroll value is accumulated in the dix, and clicky scroll wheels with legacy X11 clients are seeing an accumulation of error due to so many translations (button press to smooth scrolling value in AppKit, passed to the dix, and then synthesized into a button press). This attempts to make the situation better. http://xquartz.macosforge.org/trac/ticket/562 Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com> (cherry picked from commit 662d41acdde1dcb9774fbe4054e251c708acaffe)
2012-04-26XQuartz: Use screenInfo.{width,height} instead of grabbing it from the first ↵Jeremy Huddleston1-2/+2
screen Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com> (cherry picked from commit eda85290ae47d8dd497ef9335d10268bbe3e02a0)
2012-04-26XQuartz: Separate out tablet and mouse event delivery into separate functionsJeremy Huddleston3-139/+116
This should have no immediate impact aside from fake mouse buttons no longer working with tablets (where they aren't needed or desired anyways). This prepares us for future changes. Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com> (cherry picked from commit b99586c9086ac29df144ef75df92f8c0c7554651)
2012-04-26XQuartz: Correct calculation of the size of our file descriptor array in ↵Jeremy Huddleston1-1/+1
console_redirect Reported-by: Joe Rohde <joer@valvesoftware.com> Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com> (cherry picked from commit 30623d6ff7bca223f9e1a825e86bd317eef8bf16)
2012-04-26XQuartz: Fix a deadlock in pre-dispatch codeJeremy Huddleston1-1/+1
The fact that this has been in place so long makes me really wonder if anybody cares about this running in Tiger or Leopard. Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com> (cherry picked from commit b4c4c65a35640e7274ccd4228f62110147878b72)
2012-04-26Replay original touch begin event instead of generated begin eventChase Douglas1-3/+15
The generated event does not have axes other than X and Y and has a newer timestamp. In particular, the newer timestamp may be newer than the real touch end event, which may be stuck in the syncEvents queue. If a client uses the timestamps for grabbing bad things may happen. Signed-off-by: Chase Douglas <chase.douglas@canonical.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 00cf1c40b28417d7035c2917d048553eb720023c)
2012-04-26Update currentTime in dispatch loopChase Douglas1-0/+3
A request, like input device grabs, may check a request timestamp against currentTime. It is possible for currentTime to lag a previously sent event timestamp. If the client makes a request based on such an event timestamp, the request may fail the validity check against currentTime unless we always update the time before processing the request. Signed-off-by: Chase Douglas <chase.douglas@canonical.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 312910b4e34215aaa50fc0c6092684d5878dc32f)