CVS log for xc/programs/Xserver/hw/xfree86/common/xf86MiscExt.c |
|
Help |
Request diff between arbitrary revisions
161. Implement a major #include rework throughout the tree. Also enforce it
for all non-external builds (i.e. in-tree & SDK) (Marc La France).
160. Rework the building of hw/xfree86/parser to be more in line with the
building of other server subdirectories (such as common/)
(Marc La France).
159. ANSIfy /xc/lib/font/builtins/, and fix warnings, whitespace & formatting
(Marc La France).
Notes:
- `make World` highly recommended ;-)
- This will be further tested in the next few days.
283. First phase of dynamic configuration (David Dawes, S. Lussos,
Michael Dawes, J. D. Darling, X-Oz Technologies).
802. Licence update. (except client-side libraries)
IRIX build and warning fixes
Add/update copyright and license notices.
Typo noticed by Joe Moss
34. Add a new request to the XF86Misc extension that allows a client
to send an arbitrary message to the DDX, which in turn can send the
message to the driver. The driver may also send a string back.
An example of this is implemented for the radeon driver (#5518,
Joe Moss).
26. Updates for building on OS/2 (#5650, Frank Giessler).
493. Add a request to the XFree86-Misc extension for querying the
X server's config file, module path, and log file name (#5456, Joe Moss).
319. Moved LdPreLib define after the vendor/OS specific config files
as it may depend on setting done there (Egbert Eich).
318. Several fixes for cross compile environment (Egbert Eich).
317. Added code to allow for building of static only libraries with
-fPIC for platforms which require it (Egbert Eich).
316. Added '-m32' to gcc flags as default for ia32 builds when gcc version
is >= 3.1. This allows building a 32 bit Version of X on 64bit x86-64
(Egbert Eich).
315. Changed direct calls of ld to 'gcc -nostdlib' for Linux (Egbert Eich).
314. Changed calls to as to 'gcc -c -x assembler-with-cpp' for Linux
(Egbert Eich).
313. Added '-fno-strict-aliasing' flag to gcc version >= 3.1 (Egbert Eich).
Strict requires that one address must not contain pointers to
different types - a feature heavily used by X (Egbert Eich).
312. Fixed a core dump problem in libXtt (?) (Egbert Eich).
311. Removed '#pragma pack' from structures that contain function pointers
in x86emu. This causes problems on gcc 3.1 for ia64 (Egbert Eich).
310. Added defines for missing X types to saverproto.h (Egbert Eich).
309. Fixed compiler warings generated by gcc >= 3.1 in mesa drivers
(Egbert Eich).
308. For platforms that allow both 32 and 64 bit libraries to be executed
split Xlib i18n modules path into
<libpath>/X11R6/lib/X11/locale/lib/common and
<libpath>/X11R6/lib/X11/locale/lib64/common. 'lib64' has been defined
to be the default path for 64bit shared libraries on these platforms
(Egbert Eich).
307. Fixed obvious typo in OMlib (Egbert Eich).
306. Fixed code in cfb that didn't comply with C sequence rules.
Modern C compilers tend to be more aggressive on code reordering
(Egbert Eich).
305. Changed arguments of NoopDDA() from VarArgs to void. Handling
of VarArgs by gcc isn't compatible with the way it was used
on certain platforms (Egbert Eich).
304. Added support for 32bit pixmaps for 24bit overlay framebuffers in
fb overlay code (Egbert Eich).
303. Fixed kdrive to print a meaningful error message instead of just
core dump when no matching graphics cards is found (Egbert Eich).
302. fixed portability bug in xwd (Andreas Schwab <schwab@suse.de>)
301. fixed X Server crash, which happended each time a proportional iso10646
font was loaded with xtt backend (Yong Li <rigel863@yahoo.com>)
300. Added some ARM specific fixes to compiler.h (Uli Hecht).
299. Added a virtual 'dummy' driver (Egbert Eich).
298. Fixed core dump when certain access functions are not set in
xf86Bus.c (Egbert Eich).
297. Fixed problem where SIGIO could be disabled after a server reset.
296. Added configurable list of devices the xf86Misc extension is allowed
to change the mouse device to (Egbert Eich).
295. Changed default mouse type to 'auto' when generating config file
with '-configure' (Egbert Eich).
294. Made sure keyboard modifier settings are consistent after exit
from DGA when the xkb extension is used (Egbert Eich).
293. Disabled keyboard processing when Xserver is suspended by power
management.
This allows effective locking of laptops when stolen (Egbert Eich).
292. Added/improved options for lockfile syncing (Egbert Eich).
291. Added support for backup copy of Xserver logfile (Egbert Eich).
290. Fixed GetTimeInMillis() to use deltas instead of absolute time
returend by gettimeofday(). This ensures time is monotonic in X
(Egbert Eich).
289. Fixed xf86Misc extension to allow modification of Expps2 mice
(Egbert Eich).
288. Made code in xf86MiscExt.c more readable (Egbert Eich).
287. Fixed PCI CardBus bridge handling (Egbert Eich).
286. Added code to reenable PCI bus mastering after coming back from a
VT switch to radeon driver (Charl P. Botha <http://cpbotha.net/>)
(Egbert Eich).
285. Dito for r128 driver (M. Harris).
284. Dito for glint and mga driver (Egbert Eich).
283. Fixed double scan issues for low res modes in C&T driver (Egbert Eich).
282. Set rgbBits to 8 for all HiQV chips in chips driver (Egbert Eich).
281. Moved initialization of accel funtions past initialization of
offscreen fb manager in chips driver (Egbert Eich).
280. Fixed initialization of video in chips driver (?).
279. Fixed HALlib problem restoring text mode on G550 (Egbert Eich).
278. Restructured and included Matrox's Merged Framebuffer changes
to mga driver (Egbert Eich).
277. G450/550 clockchip programming fixes (Matrox).
276. Fixed HW Cursor for HALlib frame granularity (Egbert Eich).
275. Enabling 2D accel in 24-bit for neomagic 2360 and 2380 (Egbert Eich).
274. Added support for builtin 1024x480 mode of Sony subnotebooks for
Neomagic driver (Egbert Eich).
273. Fixed support for lowRes (320x240) modes in neomagic driver
(Egbert Eich).
272. Fixed RAC function registration in S3 driver (Egbert Eich).
271. Added some voodoo to screen initialization of S3 driver (Egbert Eich).
270. Fixed vbe/int10 support in SMI driver. It used to core dump
when BIOS was not usable (Egbert Eich).
269. Separated BRIGHTNESS and and CAPTURE_BRIGNTESS video attributes
in smi driver: CAPTURE_BRIGHTNESS refers to the capture chip
(ie. Philips SAA7110) while BRIGHTNESS controls the video overlay
of the SMI chip itself (Egbert Eich).
268. Disable automatic loading of DRI when running SUN ffb as this is
inconsistent with other drivers (Thorsten Kukuk).
267. Fixed Gamma/Brightness code in trident driver (Egbert Eich).
266. Added FpDelay debugging option (Egbert Eich).
260. Fixed video support for Trident 9397 (Egbert Eich).
265. Fixed Cursor/VT switch support for vmware driver (Egbert Eich).
264. Fixed Blit problems in vmware driver when running KDE (Egbert Eich).
263. Added RENDER support to vmware driver (Egbert Eich).
262. Added C&T 69030 to extrapci.ids (Egbert Eich).
261. Improved mouse autodetection code (Egbert Eich).
260. Restructured int10 code so that vm86 and x86emu support can be loaded
as modules. Implemented heuristic to try vm86 first and fall back to
x86emu. This allows 32 bit Xservers to run on x86_64 on 64-bit kernel
without vm86 support (Egbert Eich).
259. Restructured elf loader: determine which section to load from elfheader
flags (Egbert Eich).
258. Adding RENDER Support to RAC (Egbert Eich).
257. Using borderClip instead of borderSize region for redisplay function
in miext/shadow code to avoid core dumps when vt switched away
(Egbert Eich).
256. Replacing sprintf() by snprintf() in lbxproxy to eliminate possible
buffer overrun exploits (Egbert Eich).
255. KP_Decimal fixes to Czech and Slovak keybards
(Jan Holesovsky <kendy@suse.cz>) (Egbert Eich).
99. Fixed i810 crash on vt switch due to call to Sync() while switched away
(Andris Pavenis).
98. Fixed MGAG550 HW Cursor (Laure-Amelie Couturie).
97. Added Xv support to neomagic driver (Shigehiro Nomura).
96. Implemented cross compile environment (Egbert Eich).
95. Added AMD x86-64 architecture support (Egbert Eich).
94. Fixed memory leaks in xkb code (Egbert Eich).
93. Fixed several memory leaks in the config file parser and initialization
routines (Egbert Eich).
92. Added CardBus bridge support (Egbert Eich).
91. Fixed strdup() define in glx (Egbert Eich).
90. Extended xf86misc extension to support changing the mouse device
(Egbert Eich).
89. Replaced strdup() in xf86Configure.c with xalloc()/strcpy() to avoid
conflicts when using internal malloc (Egbert Eich).
88. Extended memory debugging: Added signal handler to trigger a memory
debugger dump on SIGUSR2 when compiled with memleak support
(Egbert Eich).
87. Set vtSema to FALSE when suspended by APM to catch calls to 2D accel
functions (Egbert Eich).
86. Implemented mouse protocol detection by analyzing data stream
(Egbert Eich).
85. Added PnP mouse detection for PS/2, ImPS/2 and older MS serial mice
(Egbert Eich).
84. Fixed gamma correction code for Trident 9397 (Alan Hourihane).
83. Fixed C&T driver to avoid initialization of video in non-linear mode
(Egbert Eich).
82. Changed C&T driver to allow video even if acceleration is disabled
(Egbert Eich).
81. Attempt to implement a more consistent handling of HW cursor in C&T
driver (Egbert Eich).
80. Fixed MGA driver to make HALlib work with VESA framebuffer modes
(Egbert Eich).
79. Reworked Rendition driver (Egbert Eich).
78. S3 Virge driver: added minimal gap between SyncStart and HDisplay to
avoid video lockups (Egbert Eich).
77. Fixed memory leaks in S3 Savage driver (Egbert Eich).
76. Modified several drivers to do int10 initialization using the
VBE functions instead of calling int10 directly (Egbert Eich).
75. Fixed video support and mode initialization in Silicon Motion driver,
removed wait for v-retrace (Egbert Eich).
74. Misc fixes to SiS driver (Thomas Winischhofer).
73. Added support for 1400x1050 screen in Trident driver (Egbert Eich).
72. Fixed several video issues for Trident CyberBladeXP chips (Egbert Eich).
71. Added probe for Tseng ISA chips (Egbert Eich).
70. Added 'KGAUniversal' option to generic vga driver which changes handling
left overscan to work also on chips with C&T core (ie all C&T and Intel
graphics chips) (Egbert Eich).
69. Modified int10 code to map area between V_BIOS and SYS_BIOS instead of
copying it. Copying causes problems if legacy devices map MMIO
registers there (Egbert Eich).
68. Implemented an extended int10 init function to allow passing flags
(Egbert Eich).
67. Implemented optional handling of BIOS video mode scratch area in int10
code (Egbert Eich).
66. Again modified MTRR range splitting (Egbert Eich).
65. Added funtions to VBE to save and restore a video mode (Egbert Eich).
64. Added missing commas to symbols/us_intl (Hans Lunsing).
63. Added Ungherese (qwerty) support (Koblinger Egmont).
62. Added Euro symbol for hungarian kbd layout (Koblinger Egmont).
221. Add a workaround for FreeBSD to make programs (like mkfontdir) that
are run as part of the build use the shared libraries from the build
rather than those that may be installed on the system (David Dawes).
- Fix some things related to the new fontenc code, enable binary compatibility
with the older interfaces by default, change the font ABI revision to 0.3
and the Xfont shared library version to 1.4.
- Some build/warning fixes.
- Remove unused xf86Switch.c.
Summary of changes for grab removal/client-closedown key sequences:
o Changed XF86MISC_MINOR_VERSION from 4 to 5
o Added the function "int XF86MiscSetGrabKeysState(Display *dpy, Bool enable)"
to the XF86Misc extension. The enable argument means allow or disallow the
use of the keys Ctrl+Alt+KP_Divide or Ctrl+Alt+KP_Multiply.
The return values are:
MiscExtGrabStateSuccess: success, enabled or disabled key sequences
MiscExtGrabStateLocked: another client already disabled the key
sequences
MiscExtGrabStateAlready: call for enabling when enabled, or disable
when disabled
o The key sequence Ctrl+Alt+KP_Divide deactivates any active keyboard/pointer
grab, if the XF86Config option allowDeactivateGrabs is set.
o The key sequence Ctrl+Alt+KP_Multiply closes the connection for the client
owner of any active keyboard/pointer/server grab, if the XF86Config option
allowClosedownGrabs is set.
Sample program to protect xlock from being killed:
--%<--
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <signal.h>
#include <X11/Xlib.h>
#include <X11/extensions/xf86misc.h>
int
main(int argc, char *argv[])
{
int xfree86, major, minor;
Display *display = XOpenDisplay(NULL);
if (display == NULL) {
fprintf(stderr, "Cannot open display.\n");
exit(1);
}
xfree86 = strstr(ServerVendor(display), "XFree86");
if (xfree86) {
signal(SIGHUP, SIG_IGN);
signal(SIGPIPE, SIG_IGN);
signal(SIGINT, SIG_IGN);
signal(SIGQUIT, SIG_IGN);
if (XF86MiscQueryVersion(display, &major, &minor) == False) {
fprintf(stderr, "Failed to call XF86MiscQueryVersion.\n");
exit(1);
}
if (major >= 0 && minor >= 5 &&
XF86MiscSetGrabKeysState(display, False) ==
MiscExtGrabStateLocked) {
fprintf(stderr, "Cannot disable XFree86 hotkeys to remove grabs.\n");
exit(1);
}
XFlush(display);
}
system("xlock");
if (xfree86 && major >= 0 && minor >= 5) {
XF86MiscSetGrabKeysState(display, True);
XFlush(display);
}
return (0);
}
--%<--
compile it as:
cc -o wrap-xlock wrap-xlock.c -I/usr/X11R6/include -L/usr/X11R6/lib -lX11 -lXext -lXxf86misc
Another option is to add this code to the screen lock programs.
Note that for safety, only screensavers should use this api.
491. fixed handling of backwards compatibility in xvmode (Egbert Eich).
490. fixed changing mouse protocol with xf86misc extensions (Egbert Eich).
489. added code to sanitize uninitialized PCI config space
base addresses (Egbert Eich).
488. Changed xf86xv.c to call StopVideo(exit=TRUE) even
if StopVideo(exit=FALSE) has already been sent (Egbert Eich).
487. fixed core dump in C&T video driver when vt switching
Changed C&T video driver to only register a block handler
when StopVideo() is called with exit = TRUE (Egbert Eich).
486. Fixed Cirrus driver not segfault when termineated while
switched away (Egbert Eich).
485. Neomagic driver: select sw cursor when screen stretching is
enabled (Egbert Eich).
484. Neomagic driver: fixed problem with screen to screen copy
on 2200 chipsets (Egbert Eich).
483. Neomagic driver: fixed 'white screen problem' by implementing
a signal save delay routine (Egbert Eich).
482. r128 driver: Fixed colormap set problem when server is switched
away (Egbert Eich).
481. r128 driver Added reinitialization of accel engine after vt switch.
480. fixed a fg/bg color problem in SiS driver (Egbert Eich).
479. attempt to address some problems with Cyber LCD chipsets in
Trident driver (Egbert Eich).
478. tseng driver: Implemented correct MMIO handling (Egbert Eich).
477. tseng driver: made accel driver multi screen capable (Egbert Eich).
476. fixed vgaHW driver to use forground color for readability
test of pallette registers. This prevents annoying flashing
screen on server start (Egbert Eich).
475. added module/font/rgb path parameters to xf86cfg (Egbert Eich).
misc changes; check CHANGELOG entires 105-120
remove some DEBUG defines
Remove the "old input" code
2902. Xterm patch #112 (#3031, Thomas Dickey).
2901. Change the colormap layer's LoadPalette function to take a Visual as
an argument rather than just the Visual class (#3030, Mark Vojkovich).
2900. Add some code to auto-detect Japanese PC98 systems (#3029,
Takaaki Nomura).
2899. Fix a casting problem in DefineSelf() that shows up on FreeBSD/alpha
(#3028, Doug Rabson).
2898. Fix a problem with the GMX2000 DRI support (Jens Owen).
2860. Remove the s3virge fifo_ changes introduced in 3.9Pu, update the
DGA2 support and docs (#2994, Kevin Brosius).
2859. Initial attempt to get the XFree86-Misc again (#2993, Joe Moss).
2858. Remove XAASync() (#2992, Rik Faith).
2857. Cleanup the TGA driver's hw cursor code, remove global variables in
in the "accel" files, and fix up the RAC support (#2991, Matt Grossman).
2856. Add partial support for color expands to the 8-bit TGA driver (#2991,
Matt Grossman).
2855. Re-enable DDC2 support in the MGA driver (#2989, Andrew Aitchison).
2854. Add missing TIOC defines for Interactive Unix to xf86_OSlib.h (#2990,
Michael Rohleder).
2853. Don't register the Xqueue mouse handler for Interactive Unix (#2990,
Michael Rohleder).
2852. Don't include sys/mman.h in cidchar.c when USE_MMAP isn't defined
(#2990, Michael Rohleder).
2851. Disable BuildXF86DRI and BuildXF86DRIDriverSupport for Interactive Unix
(#2990, Michael Rohleder).
2851. Update the apm (Alliance ProMotion) driver (#2987, 2988, Loic Grenie).
2850. Fix a problem with the xf86config screen configuration that was
introduced with the removal of "32bpp" (#2986, Matthieu Herrb).
2849. Add a DefaultDepth configuration page to xf86config (#2986,
Matthieu Herrb).
2848. Add the inputDevice examples from XF86Config.eg to config files
generated by xf86config (#2986, Matthieu Herrb).
2847. Modify the vgahw module to allow it to save/restore more than the
standard number VGA CRTC, Sequencer, Graphics and Attribute registers
(2985, Jeff Garzik).
2846. Add DDC information to the release notes (#2984, Andrew Aitchison).
2845. Change XDGAChangePixmapMode to return the X-Y position of the pixmap
in case the server is not able to place it exactly where requested
(#2983, Mark Vojkovich).
2844. Fix some problems with unfavorable alignment of XAA offscreen pixmap
(#2982, Mark Vojkovich).
2843. Some XAA speedups for NonTE text in certain cases (#2981,
Mark Vojkovich).
|
Powered by ViewCVS 0.9.2 |