Hello community,
here is the log from the commit of package xorg-x11
checked in at Thu Jul 5 00:17:56 CEST 2007.
--------
--- xorg-x11/xorg-x11.changes 2007-06-28 20:34:47.000000000 +0200
+++ /mounts/work_src_done/STABLE/xorg-x11/xorg-x11.changes 2007-07-04 23:04:04.000000000 +0200
@@ -1,0 +2,29 @@
+Wed Jul 4 21:43:04 CEST 2007 - sndirsch@suse.de
+
+- xrandr 1.2.1 (obsoletes xrandr.diff, xrandr_12_newmode.diff)
+ * Fix a typo. Make mode flags case insensitive. Improve error
+ messages.
+ * Fix bugs found by compiling with -Wall.
+ * Add --same-as option to match output positions.
+ * Add --newmode/--rmmode to create/destroy user modes.
+ * Add --addmode and --delmode commands to edit list of modes per output.
+ * Make --auto after --output only affect the output.
+ * Make --q1 output RandR 1.1 query information.
+ * Bounds check -s <index> argument to be 0 <= index < nsize
+ * Add --set option to set output properties.
+ * Support XA_ATOM properties (like TV_FORMAT).
+ * Skip relative positions for outputs without modes.
+ * Fixed alignment of the clones list.
+- grandr 0.1 (GTK+ based RandR UI)
+ * Intel's Open Source technology center is pleased to announce
+ the initial version of a GTK+-based tool to configure the X
+ output using the RandR 1.2 extension. grandr, written by Ming
+ Lin, provides a friendly interface to monitor configuration
+ and includes controls for video mode, rotation and monitor
+ position.
+- xbacklight 1.0
+ * xbacklight is a simple command-line utility to set the
+ backlight level using the RandR 1.2 BACKLIGHT output property.
+- xinit 1.0.4
+
+-------------------------------------------------------------------
Old:
----
xinit-1.0.3.tar.bz2
xrandr-1.2.0.tar.bz2
xrandr_12_newmode.diff
xrandr.diff
New:
----
grandr-0.1.tar.bz2
xbacklight-1.0.tar.bz2
xinit-1.0.4.tar.bz2
xrandr-1.2.1.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ xorg-x11.spec ++++++
--- /var/tmp/diff_new_pack.P22031/_old 2007-07-05 00:16:39.000000000 +0200
+++ /var/tmp/diff_new_pack.P22031/_new 2007-07-05 00:16:39.000000000 +0200
@@ -11,11 +11,11 @@
# norootforbuild
Name: xorg-x11
-BuildRequires: fontconfig-devel freetype2-devel libpng-devel pam-devel pkgconfig rsh update-desktop-files xorg-x11-devel xorg-x11-libICE-devel xorg-x11-libSM-devel xorg-x11-libX11-devel xorg-x11-libXau-devel xorg-x11-libXdmcp-devel xorg-x11-libXext-devel xorg-x11-libXfixes-devel xorg-x11-libXmu-devel xorg-x11-libXp-devel xorg-x11-libXpm-devel xorg-x11-libXprintUtil-devel xorg-x11-libXrender-devel xorg-x11-libXt-devel xorg-x11-libXv-devel xorg-x11-libfontenc-devel xorg-x11-libxkbfile-devel xorg-x11-proto-devel xorg-x11-xtrans-devel
+BuildRequires: fontconfig-devel freetype2-devel gconf2-devel gtk2-devel libpng-devel pam-devel pkgconfig rsh update-desktop-files xorg-x11-devel xorg-x11-libICE-devel xorg-x11-libSM-devel xorg-x11-libX11-devel xorg-x11-libXau-devel xorg-x11-libXdmcp-devel xorg-x11-libXext-devel xorg-x11-libXfixes-devel xorg-x11-libXmu-devel xorg-x11-libXp-devel xorg-x11-libXpm-devel xorg-x11-libXprintUtil-devel xorg-x11-libXrender-devel xorg-x11-libXt-devel xorg-x11-libXv-devel xorg-x11-libfontenc-devel xorg-x11-libxkbfile-devel xorg-x11-proto-devel xorg-x11-xtrans-devel
BuildRequires: mcpp
URL: http://xorg.freedesktop.org/
Version: 7.2
-Release: 89
+Release: 90
License: X11/MIT, xc/fonts/scaled/Type1/Copyright
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Group: System/X11/Utilities
@@ -77,7 +77,7 @@
Source52: xgamma-X11R7.0-1.0.1.tar.bz2
Source53: xgc-X11R7.0-1.0.1.tar.bz2
Source54: xhost-X11R7.1-1.0.1.tar.bz2
-Source55: xinit-1.0.3.tar.bz2
+Source55: xinit-1.0.4.tar.bz2
Source56: xkbcomp-1.0.3.tar.bz2
Source57: xkbevd-X11R7.1-1.0.2.tar.bz2
Source58: xkbprint-X11R7.0-1.0.1.tar.bz2
@@ -99,7 +99,7 @@
Source74: xpr-1.0.2.tar.bz2
Source75: xprehashprinterlist-X11R7.0-1.0.1.tar.bz2
Source76: xprop-1.0.2.tar.bz2
-Source77: xrandr-1.2.0.tar.bz2
+Source77: xrandr-1.2.1.tar.bz2
Source78: xrdb-1.0.3.tar.bz2
Source79: xrefresh-X11R7.1-1.0.2.tar.bz2
Source80: xrx-X11R7.0-1.0.1.tar.bz2
@@ -117,6 +117,8 @@
Source92: xwud-X11R7.0-1.0.1.tar.bz2
Source93: mkcomposecache-1.2.tar.bz2
Source94: rendercheck-1.2.tar.bz2
+Source95: grandr-0.1.tar.bz2
+Source96: xbacklight-1.0.tar.bz2
Source200: misc.tar.bz2
Source201: twm.tar.bz2
Source202: xdm.tar.bz2
@@ -130,7 +132,6 @@
Patch6: xedit.diff
Patch7: xinit.diff
Patch8: xsm.diff
-Patch9: xrandr.diff
Patch10: xrx.diff
Patch11: xconsole.diff
Patch12: ps_suse.diff
@@ -142,7 +143,6 @@
Patch20: xdm.diff
Patch21: xvidtune.diff
Patch22: beforelight.diff
-Patch23: xrandr_12_newmode.diff
Patch24: xauth-1.0.2.diff
%description
@@ -205,10 +205,6 @@
pushd xsm-*
%patch8
popd
-pushd xrandr-*
-%patch9
-%patch23 -p1
-popd
pushd xrx-*
%patch10
popd
@@ -453,6 +449,32 @@
/var/lib/xdm/authdir/
%changelog
+* Wed Jul 04 2007 - sndirsch@suse.de
+- xrandr 1.2.1 (obsoletes xrandr.diff, xrandr_12_newmode.diff)
+ * Fix a typo. Make mode flags case insensitive. Improve error
+ messages.
+ * Fix bugs found by compiling with -Wall.
+ * Add --same-as option to match output positions.
+ * Add --newmode/--rmmode to create/destroy user modes.
+ * Add --addmode and --delmode commands to edit list of modes per output.
+ * Make --auto after --output only affect the output.
+ * Make --q1 output RandR 1.1 query information.
+ * Bounds check -s <index> argument to be 0 <= index < nsize
+ * Add --set option to set output properties.
+ * Support XA_ATOM properties (like TV_FORMAT).
+ * Skip relative positions for outputs without modes.
+ * Fixed alignment of the clones list.
+- grandr 0.1 (GTK+ based RandR UI)
+ * Intel's Open Source technology center is pleased to announce
+ the initial version of a GTK+-based tool to configure the X
+ output using the RandR 1.2 extension. grandr, written by Ming
+ Lin, provides a friendly interface to monitor configuration
+ and includes controls for video mode, rotation and monitor
+ position.
+- xbacklight 1.0
+ * xbacklight is a simple command-line utility to set the
+ backlight level using the RandR 1.2 BACKLIGHT output property.
+- xinit 1.0.4
* Thu Jun 28 2007 - dmueller@suse.de
- xauth: crash on removing non-existant entry
* Fri Jun 22 2007 - sndirsch@suse.de
++++++ ps_suse.diff ++++++
--- /var/tmp/diff_new_pack.P22031/_old 2007-07-05 00:16:40.000000000 +0200
+++ /var/tmp/diff_new_pack.P22031/_new 2007-07-05 00:16:40.000000000 +0200
@@ -18,7 +18,7 @@
Color
--- xinit-X11R7.1-1.0.2.orig/xinitrc.cpp 2006-08-19 11:02:26.000000000 +0200
-+++ xinit-1.0.3/xinitrc.cpp 2006-08-19 11:02:35.000000000 +0200
++++ xinit-1.0.4/xinitrc.cpp 2006-08-19 11:02:35.000000000 +0200
@@ -68,8 +68,10 @@
XCOMM This is the fallback case if nothing else is executed above
@@ -33,7 +33,7 @@
-exec XTERM -geometry 80x66+0+0 -name login
+exec TWM
--- xinit-X11R7.1-1.0.2.orig/startx.cpp 2006-08-19 11:02:26.000000000 +0200
-+++ xinit-1.0.3/startx.cpp 2006-08-19 11:14:43.000000000 +0200
++++ xinit-1.0.4/startx.cpp 2006-08-19 11:14:43.000000000 +0200
@@ -62,10 +62,115 @@
sysclientrc=XINITDIR/xinitrc
#endif
++++++ p_xauth.diff ++++++
--- /var/tmp/diff_new_pack.P22031/_old 2007-07-05 00:16:40.000000000 +0200
+++ /var/tmp/diff_new_pack.P22031/_new 2007-07-05 00:16:40.000000000 +0200
@@ -289,7 +289,7 @@
}
doWrite = 1;
--- programs/xinit/startx.cpp.orig 2005-11-11 11:16:53.000000000 +0100
-+++ xinit-1.0.3/startx.cpp 2005-11-11 11:35:19.000000000 +0100
++++ xinit-1.0.4/startx.cpp 2005-11-11 11:35:19.000000000 +0100
@@ -328,6 +328,7 @@
. /etc/sysconfig/displaymanager
test "$DISPLAYMANAGER_XSERVER_TCP_PORT_6000_OPEN" != "yes" && \
++++++ xinit-1.0.3.tar.bz2 -> xinit-1.0.4.tar.bz2 ++++++
++++ 11889 lines of diff (skipped)
++++ retrying with extended exclude list
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xinit-1.0.3/autogen.sh new/xinit-1.0.4/autogen.sh
--- old/xinit-1.0.3/autogen.sh 1970-01-01 01:00:00.000000000 +0100
+++ new/xinit-1.0.4/autogen.sh 2006-11-06 23:45:48.000000000 +0100
@@ -0,0 +1,13 @@
+#! /bin/sh
+
+srcdir=`dirname $0`
+test -z "$srcdir" && srcdir=.
+
+ORIGDIR=`pwd`
+cd $srcdir
+
+autoreconf -v --install || exit 1
+cd $ORIGDIR || exit $?
+
+$srcdir/configure --enable-maintainer-mode "$@"
+
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xinit-1.0.3/ChangeLog new/xinit-1.0.4/ChangeLog
--- old/xinit-1.0.3/ChangeLog 2006-10-12 00:15:55.000000000 +0200
+++ new/xinit-1.0.4/ChangeLog 2007-05-22 05:03:25.000000000 +0200
@@ -1,103 +1,417 @@
-2006-06-20 Matthieu Herrb
+commit e9c1d1667b58c738cb1317219cc0ac84bef2a5d6
+Author: Alan Coopersmith
+Date: Mon May 21 20:00:38 2007 -0700
- * xinit.c:
- Check setuid() return value. Bugzilla #7116.
+ Version bump: 1.0.4
-2006-05-27 Jeremy C. Reed
+commit 3686497f31ac9f548f6f3aa5d4418a96fe564497
+Author: Alan Coopersmith
+Date: Mon May 21 18:42:56 2007 -0700
- * startx.cpp:
- In comments, change contractions to be spelled out to fix
- cpp "missing terminating" errors with single quotes.
+ Remove old Imake checks now that we always build with autoconf
-2006-04-30 Matthieu Herrb
+commit d5b726c2dbc22b6fd9623604e9252aaef30c387c
+Author: Alan Coopersmith
+Date: Mon May 21 18:18:56 2007 -0700
- * configure.ac:
- Quote MCOOKIE to allow to specify a command with args (ie
- MCOOKIE="/usr/sbin/openssl rand -hex 16" ./configure ...)
+ Remove support for pre-POSIX-1990 platforms
-2006-04-01 Adam Jackson
+commit dfba9a82068b44429a08b307d26b91495c10c7c1
+Author: Alan Coopersmith
+Date: Mon May 21 17:52:38 2007 -0700
- * configure.ac:
- Bump to 1.0.2.
+ Modernize list of Xservers printed when "X" is not found in $PATH
-2006-02-25 Jeremy C. Reed
+commit a73284c7aeeab7ee0c1b6027819955ef7b08f23d
+Author: Alan Coopersmith
+Date: Mon May 21 17:09:40 2007 -0700
- * startx.cpp:
- Bug #4449 https://bugs.freedesktop.org/show_bug.cgi?id=4449
- Be more portable (for different /bin/sh shells) for
- the arithmetic.
+ Replace static ChangeLog with dist hook to generate from git log
-2005-12-20 Kevin E. Martin <kem-at-freedesktop-dot-org>
+commit 8942f1fd8377c0e67e5ad493af55b7d7b3f996c7
+Author: Alan Coopersmith
+Date: Mon May 21 16:49:18 2007 -0700
- * configure.ac:
- Update package version for X11R7 release.
+ Don't print windowpath debug messages unless built -DDEBUG
+
+ No need to print warnings on systems without vt support
-2005-12-14 Kevin E. Martin <kem-at-freedesktop-dot-org>
+commit fa78528b44d4c1c50594359e17114208834a84fd
+Author: Samuel Thibault
+Date: Fri Aug 25 16:48:00 2006 -0800
- * configure.ac:
- Update package version number for final X11R7 release candidate.
+ X.Org Bugzilla #8013: xinit should set WINDOWPATH
+
+ X.Org Bugzilla #8013: https://bugs.freedesktop.org/show_bug.cgi?id=8013
+ Patch #6701: https://bugs.freedesktop.org/attachment.cgi?id=6701
-2005-12-06 Kevin E. Martin <kem-at-freedesktop-dot-org>
+commit 64f1a94404924b1ada6b43ed33c80a560712ec36
+Author: Daniel Drake
+Date: Mon May 21 16:33:23 2007 -0700
- * Makefile.am:
- Change *man_SOURCES ==> *man_PRE to fix autotools warnings.
+ Fill in COPYING File (X.Org Bugzilla #11024)
-2005-12-03 Kevin E. Martin <kem-at-freedesktop-dot-org>
+commit 3b6dad2ba4d4507cd742d8e7ff760fe006c0aa23
+Author: Alan Coopersmith
+Date: Fri May 18 23:44:06 2007 -0700
- * configure.ac:
- Add m4 magic to allow AS_HELP_STRING to work with older versions
- of autoconf 2.57.
+ Bug #10616: Clarify syntax on xinit & startx man pages
+
+ X.Org Bugzilla #10616: https://bugs.freedesktop.org/show_bug.cgi?id=10616
+ Reported upstream from
+ Debian bug #267744 http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=267744
-2005-12-03 Kevin E. Martin <kem-at-freedesktop-dot-org>
+commit ad23a55a581ab18c4614e2cb5d82c4376ee88722
+Author: Alan Coopersmith
+Date: Mon Nov 6 14:56:07 2006 -0800
- * configure.ac:
- Update package version number for X11R7 RC3 release.
+ Stop hardcoding /usr/X11R6/bin in manpage examples
-2005-11-14 Kevin E. Martin <kem-at-freedesktop-dot-org>
+commit c50afd78af7496938a10b317c5e41b4d99d1fc60
+Author: Alan Coopersmith
+Date: Mon Nov 6 14:47:34 2006 -0800
- * Makefile.am:
- * configure.ac:
- Make the programs used in the xinit scripts configurable.
+ Change example X server argument from bc to -br now that bc is gone
-2005-11-09 Alan Coopersmith
+commit 7b3e51364355716731670522b578b23d40fb356b
+Author: Alan Coopersmith
+Date: Mon Nov 6 14:46:42 2006 -0800
- * configure.ac:
- Add settings for SHELL_CMD & ARCHMANDEFS to match monolith
- changes for bug #3180.
+ Add *~ to .gitignore to skip over emacs/patch droppings
- AC_DEFINE(XORG,...) so it is listed as available server in xinit
- help output.
+commit c9da362e9f3f80a91b91011c21ef85e1cd3ef48b
+Author: Alan Coopersmith
+Date: Mon Nov 6 14:46:15 2006 -0800
- * Makefile.am:
- Update cpp -D flags to match monolith changes for bug #3180.
-
-2005-11-09 Kevin E. Martin <kem-at-freedesktop-dot-org>
+ renamed: .cvsignore -> .gitignore
- * configure.ac:
- Update package version number for X11R7 RC2 release.
+commit de19be83afe7d0dc9a71fa529e80d91b4e26bdda
+Author: Adam Jackson
+Date: Fri Oct 13 17:53:12 2006 -0400
-2005-10-18 Kevin E. Martin <kem-at-freedesktop-dot-org>
+ Bump to 1.0.3
- * configure.ac:
- Update package version number for RC1 release.
+commit 4fc9d215202b494a9182913f84eb41ba2bd1e39b
+Author: Matthieu Herrb
+Date: Tue Jun 20 19:25:51 2006 +0000
-2005-10-16 Alan Coopersmith
+ Check setuid() return value. Bugzilla #7116.
- * configure.ac:
- * Makefile.am:
- Use cpp to substitute variables in man pages
-
-2005-10-10 Alan Coopersmith
+commit 732e5f17cf5189854654360e978a62d6d6b82d4b
+Author: Jeremy C. Reed
+Date: Sat May 27 15:28:04 2006 +0000
- * configure.ac:
- * Makefile.am:
- Don't define HAS_COOKIE_MAKER if mcookie wasn't found.
+ In comments, change contractions to be spelled out to fix cpp "missing
+ terminating" errors with single quotes.
-2005-08-29 Daniel Stone
+commit db74ad799da27eec04b5aed64e3564aef9156a04
+Author: Matthieu Herrb
+Date: Sun Apr 30 14:19:19 2006 +0000
- Version 0.99.1.
+ Quote MCOOKIE to allow to specify a command with args (ie
+ MCOOKIE="/usr/sbin/openssl rand -hex 16" ./configure ...)
- * configure.ac:
- * Makefile.am:
- Define HAS_COOKIE_MAKER and search for mcookie so startx will generate
- xauth tokens for the servers it starts.
+commit 797f51d176ab9a29497a9141a57a968c5a7d3792
+Author: Adam Jackson
+Date: Sun Apr 2 01:06:41 2006 +0000
+
+ Bump to 1.0.2.
+
+commit bbf54921031f679c0d266a6b2ef4926f872d18f1
+Author: Jeremy C. Reed
+Date: Sat Feb 25 15:20:06 2006 +0000
+
+ Bug #4449 https://bugs.freedesktop.org/show_bug.cgi?id=4449 Be more
+ portable (for different /bin/sh shells) for the arithmetic.
+ NetBSD's /bin/sh didn't like: dummy=$((dummy+1)) and complained: startx:
+ arith: syntax error: "dummy+1"
+ This was fixed by NetBSD and also by Gentoo, see:
+ https://launchpad.net/distros/ubuntu/+source/xinit/+bug/31241
+
+commit 6690352bdd01603a5e82e177aab4804d5424b8b1
+Author: Kevin E Martin
+Date: Wed Dec 21 02:29:51 2005 +0000
+
+ Update package version for X11R7 release.
+
+commit 9ea919f305201ad9c3695a4534f08d5d373d3eb5
+Author: Adam Jackson
+Date: Mon Dec 19 16:22:44 2005 +0000
+
+ Stub COPYING files
+
+commit 0a95c12d2dd1da5a2c2f7ef3a731ef40074fba23
+Author: Kevin E Martin
+Date: Thu Dec 15 00:24:07 2005 +0000
+
+ Update package version number for final X11R7 release candidate.
+
+commit 18056e663f89b0b5019f549365afbdf975a59d61
+Author: Kevin E Martin
+Date: Tue Dec 6 22:48:22 2005 +0000
+
+ Change *man_SOURCES ==> *man_PRE to fix autotools warnings.
+
+commit cc7dfc25d5854ac08dfa7dc52c96702e60777e5c
+Author: Kevin E Martin
+Date: Sat Dec 3 17:08:50 2005 +0000
+
+ Add m4 magic to allow AS_HELP_STRING to work with older versions of
+ autoconf 2.57.
+
+commit b0081f30f7d2bdc59509e09b7d147700456d562e
+Author: Kevin E Martin
+Date: Sat Dec 3 05:49:24 2005 +0000
+
+ Update package version number for X11R7 RC3 release.
+
+commit 15470956794d19c3b1ee0d17e727e0a77436518f
+Author: Alan Coopersmith
+Date: Mon Nov 28 22:01:43 2005 +0000
+
+ Change *mandir targets to use new *_MAN_DIR variables set by xorg-macros.m4
+ update to fix bug #5167 (Linux prefers *.1x man pages in man1 subdir)
+
+commit 66b04609fdf1910588e05f74f772441c712ed0cc
+Author: Eric Anholt
+Date: Mon Nov 21 10:35:01 2005 +0000
+
+ Another pass at .cvsignores for apps.
+
+commit d286ee2400f8f9c4110971545ef50a556e5c08f9
+Author: Eric Anholt
+Date: Sun Nov 20 22:08:53 2005 +0000
+
+ Add/improve .cvsignore files for apps.
+
+commit 0a06386696875638e9e9b6e47e95affbf542e25d
+Author: Kevin E Martin
+Date: Tue Nov 15 04:05:59 2005 +0000
+
+ Make the programs used in the xinit scripts configurable.
+
+commit 549c55ea15e60b9aca5da1ed6f18564f1e69cd26
+Author: Kevin E Martin
+Date: Tue Nov 15 04:03:10 2005 +0000
+
+ Make using full paths in the xinit scripts optional.
+
+commit 277975ec73744657e556a0c6380614d8684db7df
+Author: Alan Coopersmith
+Date: Thu Nov 10 04:25:39 2005 +0000
+
+ Add settings for SHELL_CMD & ARCHMANDEFS to match monolith changes for bug
+ #3180.
+ AC_DEFINE(XORG,...) so it is listed as available server in xinit help
+ output.
+ Update cpp -D flags to match monolith changes for bug #3180.
+
+commit 6e7bcf4f2ea8bb868ed8b0459f1c0d6cc172f4ae
+Author: Kevin E Martin
+Date: Wed Nov 9 21:09:21 2005 +0000
+
+ Update package version number for X11R7 RC2 release.
+
+commit af47a9e0dd891dcaa52b12f4eda85381e0467916
+Author: Kean Johnson
+Date: Tue Nov 8 06:33:33 2005 +0000
+
+ See ChangeLog entry 2005-11-07 for details.
+
+commit 6beb2e4769b8b3708f30ee7adf8037a4e1f39f3d
+Author: Kevin E Martin
+Date: Wed Oct 19 02:47:54 2005 +0000
+
+ Update package version number for RC1 release.
+
+commit dc0b907e02d6c1ab917e30c4b262b5c9f780ef12
+Author: Alan Coopersmith
+Date: Mon Oct 17 23:56:23 2005 +0000
+
+ Use @APP_MAN_SUFFIX@ instead of $(APP_MAN_SUFFIX) in macro substitutions to
+ work better with BSD make
+
+commit 0c48fdb05b2538c94c809e25c8690a7094900e07
+Author: Alan Coopersmith
+Date: Sun Oct 16 22:18:22 2005 +0000
+
+ Use cpp to substitute variables in man pages
+
+commit 9c8787d2ce69e55b9ba362a92f01592d8ee0a3a3
+Author: Alan Coopersmith
+Date: Tue Oct 11 01:09:43 2005 +0000
+
+ Don't define HAS_COOKIE_MAKER if mcookie wasn't found.
+
+commit e2dd25d3cf2f10c0cff0d37d05f58b81344db68b
+Author: Adam Jackson
+Date: Tue Oct 4 01:27:34 2005 +0000
+
+ Bug #2027: Treat SIGTERM like SIGINT in xinit. (Andreas Luik)
+
+commit 48ea043e65943fd66e03788be9867c69b96c738c
+Author: Daniel Stone
+Date: Mon Aug 29 01:56:12 2005 +0000
+
+ Bump to 0.99.1.
+
+commit 9f74cfed8f808009b3acfa0af383218f3bf0fc00
+Author: Daniel Stone
+Date: Mon Aug 29 01:54:30 2005 +0000
+
+ Define HAS_COOKIE_MAKER and search for mcookie so startx will generate
+ xauth tokens for the servers it starts.
+
+commit 52fb36b1ec52e78916bf9cf1a5e7bdce05482b0c
+Author: Eric Anholt
+Date: Thu Aug 11 18:11:32 2005 +0000
+
+ Bugzilla #4045: Do a missed replacement of @@ with \ in startx.
+ Submitted by: David Schleef
+
+commit ef53714d87aa71309fe2f22862f1892a8e620336
+Author: Eric Anholt
+Date: Thu Aug 11 18:09:45 2005 +0000
+
+ Set CSRG_BASED for BSD systems so the build succeeds.
+
+commit 2b515c0e9940d3fc5b4151d10678f3c0b09668fc
+Author: Kevin E Martin
+Date: Fri Jul 29 21:22:34 2005 +0000
+
+ Various changes preparing packages for RC0:
+ - Verify and update package version numbers as needed
+ - Implement versioning scheme
+ - Change bug address to point to bugzilla bug entry form
+ - Disable loadable i18n in libX11 by default (use --enable-loadable-i18n to
+ reenable it)
+ - Fix makedepend to use pkgconfig and pass distcheck
+ - Update build script to build macros first
+ - Update modular Xorg version
+
+commit 22c07dc931424a64046c489ff95b9ca14d7a5552
+Author: Alan Coopersmith
+Date: Tue Jul 26 18:58:15 2005 +0000
+
+ Use AC_TYPE_SIGNAL and AC_FUNC_VFORK to replace Imake's SIGNAL_DEFINES and
+ -DHAS_VFORK
+
+commit db7faf36b93971eef4857d24efe0de155b7cdb19
+Author: Alan Coopersmith
+Date: Tue Jul 26 18:55:42 2005 +0000
+
+ Add config.h includes for modularization Use RETSIGTYPE if defined by
+ autoconf in addition to Imake's SIGNALRETURNSINT. Use
+ HAVE_WORKING_VFORK if defined by autoconf in addition to Imake's
+ HAS_VFORK
+
+commit e5280bb6562129bf7617a24784b19da4cbd7abc8
+Author: Adam Jackson
+Date: Mon Jul 25 23:19:06 2005 +0000
+
+ Bug #3860: Avoid a bashism. (Diego Pettenò)
+
+commit 4c76716e9eef58c7de7dab27bdeca33a2980b726
+Author: Daniel Stone
+Date: Sat Jul 23 03:02:58 2005 +0000
+
+ Move manpages to section 1.
+
+commit b5a90f98073bfa5d5615f5aa0ae73af07f625bbb
+Author: Alan Coopersmith
+Date: Wed Jul 20 22:49:25 2005 +0000
+
+ Use kbd_mode -a to restore console keyboard on Solaris x86 too.
+
+commit e83a8d3f9816605106a496c89f9e9ccfae3e4f4c
+Author: Adam Jackson
+Date: Wed Jul 20 19:31:57 2005 +0000
+
+ Use a unique token for PKG_CHECK_MODULES. Otherwise, if you use a global
+ configure cache, you cache it, and the cached value is probably wrong.
+
+commit d8980cb7b6df64cf92c5b660f838497296dbb0bb
+Author: Alan Coopersmith
+Date: Sat Jul 16 23:29:38 2005 +0000
+
+ x11perf/Makefile.am: xinit/Makefile.am: xvidtune/Makefile.am:
+ - Replace $< with portable macro xinit/Makefile.am: xinit/configure.ac:
+ xvidtune/Makefile.am: xvidtune/configure.ac:
+ - Use more portable cpp invocations for pre-processing files
+ xfs/configure.ac:
+ - Add XTRANS_CONNECTION_FLAGS so xtrans transport type defines are set
+ correctly
+
+commit d731a249d0c1c7f9eb77828c0d6e79cfdaf75589
+Author: Søren Sandmann Pedersen
+Date: Tue Jul 5 21:12:01 2005 +0000
+
+ Build system for xinit
+
+commit dd7fee44b126636d6c3edd9e325ce411e3ae5d78
+Author: Egbert Eich
+Date: Wed Apr 20 17:54:12 2005 +0000
+
+ Separate server auth and client .Xautority file in startx. .Xautority might
+ have credentials from other Xservers which we might not want to enable
+ on ours Bugzilla #3078).
+
+commit 4118bc8579ac75620ea6cda2b16d3ebbe4f5b6af
+Author: Egbert Eich
+Date: Fri Apr 23 19:54:49 2004 +0000
+
+ Merging XORG-CURRENT into trunk
+
+commit 52279458e75907cb4d004e8be0c87f1c7b714159
+Author: Egbert Eich
+Date: Sun Mar 14 08:35:24 2004 +0000
+
+ Importing vendor version xf86-4_4_99_1 on Sun Mar 14 00:26:39 PST 2004
+
+commit 59c01948e5bda5b2584e1a19f735737896a87c69
+Author: Egbert Eich
+Date: Wed Mar 3 12:13:08 2004 +0000
+
+ Importing vendor version xf86-4_4_0 on Wed Mar 3 04:09:24 PST 2004
+
+commit 6427c13f6e132a3d19bbb7c3a2dc0c5b8215b3d8
+Author: Egbert Eich
+Date: Thu Feb 26 13:36:25 2004 +0000
+
+ readding XFree86's cvs IDs
+
+commit 40ac2d222287210c7724e3ac5a15af490aed50b9
+Author: Egbert Eich
+Date: Thu Feb 26 09:24:08 2004 +0000
+
+ Importing vendor version xf86-4_3_99_903 on Wed Feb 26 01:21:00 PST 2004
+
+commit fae621e34ee1eff0bc70e60c7843c0fce9f9ec1a
+Author: Egbert Eich
+Date: Thu Jan 29 08:09:12 2004 +0000
+
+ Importing vendor version xf86-012804-2330 on Thu Jan 29 00:06:33 PST 2004
+
+commit b1dacbed577312f5fa86d9d81aa946276c646167
+Author: Kaleb Keithley
+Date: Tue Nov 25 19:29:13 2003 +0000
+
+ XFree86 4.3.99.16 Bring the tree up to date for the Cygwin folks
+
+commit c301daadb9de3348d7dd1b511cadf7d55a59bc1c
+Author: Kaleb Keithley
+Date: Fri Nov 14 16:49:22 2003 +0000
+
+ XFree86 4.3.0.1
+
+commit b7d9a0b434bb0d32857fc47611926cb59ac7f3c5
+Author: Kaleb Keithley
+Date: Fri Nov 14 16:49:22 2003 +0000
+
+ Initial revision
+
+commit f18e25ab379836d0885660ad9c42ed588b1152b8
+Author: Kaleb Keithley
+Date: Fri Nov 14 15:54:54 2003 +0000
+
+ R6.6 is the Xorg base-line
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xinit-1.0.3/config.h.in new/xinit-1.0.4/config.h.in
--- old/xinit-1.0.3/config.h.in 2006-10-13 23:53:06.000000000 +0200
+++ new/xinit-1.0.4/config.h.in 2007-05-22 05:03:15.000000000 +0200
@@ -6,6 +6,9 @@
/* Define to 1 if you have the header file. */
#undef HAVE_INTTYPES_H
+/* Define to 1 if you have the `killpg' function. */
+#undef HAVE_KILLPG
+
/* Define to 1 if you have the header file. */
#undef HAVE_MEMORY_H
@@ -60,6 +63,15 @@
/* Define to the version of this package. */
#undef PACKAGE_VERSION
+/* Major version of this package */
+#undef PACKAGE_VERSION_MAJOR
+
+/* Minor version of this package */
+#undef PACKAGE_VERSION_MINOR
+
+/* Patch version of this package */
+#undef PACKAGE_VERSION_PATCHLEVEL
+
/* Define as the return type of signal handlers (`int' or `void'). */
#undef RETSIGTYPE
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xinit-1.0.3/configure.ac new/xinit-1.0.4/configure.ac
--- old/xinit-1.0.3/configure.ac 2006-10-13 23:29:28.000000000 +0200
+++ new/xinit-1.0.4/configure.ac 2007-05-22 04:58:04.000000000 +0200
@@ -22,7 +22,7 @@
dnl Process this file with autoconf to create configure.
AC_PREREQ([2.57])
-AC_INIT(xinit,[1.0.3], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],xinit)
+AC_INIT(xinit,[1.0.4], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],xinit)
AM_INIT_AUTOMAKE([dist-bzip2])
AM_MAINTAINER_MODE
@@ -37,6 +37,8 @@
AC_TYPE_SIGNAL
AC_FUNC_FORK
+AC_CHECK_FUNCS([killpg])
+
m4_ifdef([AS_HELP_STRING], , [m4_define([AS_HELP_STRING], m4_defn([AC_HELP_STRING]))])
# Build options
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xinit-1.0.3/COPYING new/xinit-1.0.4/COPYING
--- old/xinit-1.0.3/COPYING 2006-10-12 00:15:55.000000000 +0200
+++ new/xinit-1.0.4/COPYING 2007-05-22 01:32:27.000000000 +0200
@@ -1,12 +1,21 @@
-This is a stub file. This package has not yet had its complete licensing
-information compiled. Please see the individual source files for details on
-your rights to use and modify this software.
+Copyright 1986, 1988, 1993, 1998 The Open Group
-Please submit updated COPYING files to the Xorg bugzilla:
+Permission to use, copy, modify, distribute, and sell this software and its
+documentation for any purpose is hereby granted without fee, provided that
+the above copyright notice appear in all copies and that both that
+copyright notice and this permission notice appear in supporting
+documentation.
-https://bugs.freedesktop.org/enter_bug.cgi?product=xorg
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
-All licensing questions regarding this software should be directed at the
-Xorg mailing list:
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-http://lists.freedesktop.org/mailman/listinfo/xorg
+Except as contained in this notice, the name of The Open Group shall not be
+used in advertising or otherwise to promote the sale, use or other dealings
+in this Software without prior written authorization from The Open Group.
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xinit-1.0.3/Makefile.am new/xinit-1.0.4/Makefile.am
--- old/xinit-1.0.3/Makefile.am 2006-10-12 00:15:55.000000000 +0200
+++ new/xinit-1.0.4/Makefile.am 2007-05-22 01:52:09.000000000 +0200
@@ -64,6 +64,7 @@
-D__miscmansuffix__=$(MISC_MAN_SUFFIX) \
-D__XSERVERNAME__=Xorg -D__XCONFIGFILE__=xorg.conf \
-D__xinitdir__=$(XINITDIR) \
+ -D__bindir__=$(bindir) \
-DSHELL_CMD=$(SHELL_CMD) $(ARCHMANDEFS)
SUFFIXES = .$(APP_MAN_SUFFIX) .man
@@ -98,5 +99,9 @@
CLEANFILES = xinitrc startx $(appman_DATA)
EXTRA_DIST = xinitrc.cpp startx.cpp $(appman_PRE) \
- startx.cmd xinitrc.cmd xinit.def
+ startx.cmd xinitrc.cmd xinit.def ChangeLog autogen.sh
+ChangeLog:
+ (GIT_DIR=$(top_srcdir)/.git git-log > .changelog.tmp && mv .changelog.tmp ChangeLog; rm -f .changelog.tmp) || (touch ChangeLog; echo 'git directory not found: installing possibly empty changelog.' >&2)
+
+dist-hook: ChangeLog
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xinit-1.0.3/startx.man new/xinit-1.0.4/startx.man
--- old/xinit-1.0.3/startx.man 2006-10-12 00:15:55.000000000 +0200
+++ new/xinit-1.0.4/startx.man 2007-05-19 08:36:08.000000000 +0200
@@ -39,6 +39,8 @@
.B \-\^\-
[
.I server
+] [
+.I display
]
.I options
\&.\|.\|. ]
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xinit-1.0.3/xinit.c new/xinit-1.0.4/xinit.c
--- old/xinit-1.0.3/xinit.c 2006-10-12 00:15:55.000000000 +0200
+++ new/xinit-1.0.4/xinit.c 2007-05-22 03:41:26.000000000 +0200
@@ -34,8 +34,10 @@
#include
#include
+#include
#include
#include
+#include
#ifdef X_POSIX_C_SOURCE
#define _POSIX_C_SOURCE X_POSIX_C_SOURCE
@@ -77,25 +79,26 @@
#include
extern char **environ;
char **newenviron = NULL;
+char **newenvironlast = NULL;
#ifndef SHELL
#define SHELL "sh"
#endif
-#if !defined(HAS_VFORK) /* Imake */ && !defined(HAVE_WORKING_VFORK) /* autoconf*/
-#ifndef vfork
-#define vfork() fork()
-#endif
-#else
-#if (defined(sun) && !defined(SVR4)) || defined(HAVE_VFORK_H)
-#include
-#endif
+#ifndef HAVE_WORKING_VFORK
+# ifndef vfork
+# define vfork() fork()
+# endif
+#else
+# ifdef HAVE_VFORK_H
+# include
+# endif
#endif
/* A/UX setpgid incorrectly removes the controlling terminal.
Per Posix, only setsid should do that. */
-#if !defined(X_NOT_POSIX) && !defined(macII)
-#define setpgrp setpgid
+#ifdef macII
+#define setpgid setpgrp
#endif
#ifdef __UNIXOS2__
@@ -108,12 +111,12 @@
#define Execvpe(path, argv, envp) execvp(path, argv)
#endif
-char *bindir = BINDIR;
-char *server_names[] = {
+const char *bindir = BINDIR;
+const char * const server_names[] = {
#if defined(ultrix) && defined(mips)
"Xdec Digital color display on DECstation",
#endif
-#ifdef sun /* Sun */
+#if defined(sun) && !defined(XORG) /* Sun */
"Xsun Sun BW2, CG2, CG3, CG4, or CG6 on Sun 2, 3, 4, or 386i",
"Xsunmono Sun BW2 on Sun 2, 3, 4, or 386i ",
"Xsun24 Sun BW2, CG2, CG3, CG4, CG6, or CG8 on Sun 4",
@@ -131,14 +134,16 @@
"XFree86 XFree86 displays",
#endif
#ifdef XORG
- "Xorg X.Org displays",
+ "Xorg Common X server for most displays",
#endif
#ifdef __DARWIN__
"XDarwin Darwin/Mac OS X IOKit displays",
"XDarwinQuartz Mac OS X Quartz displays",
"XDarwinStartup Auto-select between XDarwin and XDarwinQuartz",
#endif
-
+ "Xvfb Virtual frame buffer",
+ "Xnest X server nested in a window on another X server",
+ "Xephyr kdrive-based nested X server",
NULL};
#ifndef XINITRC
@@ -175,9 +180,7 @@
#endif /* SYSV */
int serverpid = -1;
int clientpid = -1;
-#ifndef X_NOT_POSIX
volatile int gotSignal = 0;
-#endif
static void Execute ( char **vec, char **envp );
static Bool waitforserver ( void );
@@ -192,43 +195,13 @@
#ifdef RETSIGTYPE /* autoconf AC_TYPE_SIGNAL */
# define SIGVAL RETSIGTYPE
-#else /* Imake */
-#ifdef SIGNALRETURNSINT
-#define SIGVAL int
-#else
-#define SIGVAL void
-#endif
#endif /* RETSIGTYPE */
-#ifdef X_NOT_POSIX
-/* Can't use Error() in signal handlers */
-#ifndef STDERR_FILENO
-#define WRITES(s) write(STDERR_FILENO, (s), strlen(s))
-#else
-#define WRITES(s) write(fileno(stderr), (s), strlen(s))
-#endif
-#endif
-
static SIGVAL
sigCatch(int sig)
{
-#ifdef X_NOT_POSIX
- char buf[1024];
-
- signal(SIGTERM, SIG_IGN);
- signal(SIGQUIT, SIG_IGN);
- signal(SIGINT, SIG_IGN);
- signal(SIGHUP, SIG_IGN);
- signal(SIGPIPE, SIG_IGN);
- snprintf(buf, sizeof buf, "%s: unexpected signal %d\r\n",
- program, sig);
- WRITES(buf);
- shutdown();
- _exit(ERR_EXIT);
-#else
/* On system with POSIX signals, just interrupt the system call */
gotSignal = sig;
-#endif
}
static SIGVAL
@@ -277,9 +250,7 @@
int client_given = 0, server_given = 0;
int client_args_given = 0, server_args_given = 0;
int start_of_client_args, start_of_server_args;
-#ifndef X_NOT_POSIX
struct sigaction sa;
-#endif
#ifdef __UNIXOS2__
envsave = envp; /* circumvent an EMX problem */
@@ -440,13 +411,7 @@
#ifdef SIGCHLD
signal(SIGCHLD, SIG_DFL); /* Insurance */
#endif
-#ifdef X_NOT_POSIX
- signal(SIGTERM, sigCatch);
- signal(SIGQUIT, sigCatch);
- signal(SIGINT, sigCatch);
- signal(SIGHUP, sigCatch);
- signal(SIGPIPE, sigCatch);
-#else
+
/* Let those signal interrupt the wait() call in the main loop */
memset(&sa, 0, sizeof sa);
sa.sa_handler = sigCatch;
@@ -458,16 +423,14 @@
sigaction(SIGINT, &sa, NULL);
sigaction(SIGHUP, &sa, NULL);
sigaction(SIGPIPE, &sa, NULL);
-#endif
+
signal(SIGALRM, sigAlarm);
signal(SIGUSR1, sigUsr1);
if (startServer(server) > 0
&& startClient(client) > 0) {
pid = -1;
while (pid != clientpid && pid != serverpid
-#ifndef X_NOT_POSIX
&& gotSignal == 0
-#endif
)
pid = wait(NULL);
}
@@ -478,12 +441,12 @@
signal(SIGPIPE, SIG_IGN);
shutdown();
-#ifndef X_NOT_POSIX
+
if (gotSignal != 0) {
Error("unexpected signal %d.\n", gotSignal);
exit(ERR_EXIT);
}
-#endif
+
if (serverpid < 0 )
Fatal("Server error.\n");
if (clientpid < 0)
@@ -561,32 +524,21 @@
static int
startServer(char *server[])
{
-#if !defined(X_NOT_POSIX)
sigset_t mask, old;
-#else
- int old;
-#endif
#ifdef __UNIXOS2__
sigset_t pendings;
#endif
-#if !defined(X_NOT_POSIX)
sigemptyset(&mask);
sigaddset(&mask, SIGUSR1);
sigprocmask(SIG_BLOCK, &mask, &old);
-#else
- old = sigblock (sigmask (SIGUSR1));
-#endif
+
serverpid = fork();
switch(serverpid) {
case 0:
/* Unblock */
-#ifndef X_NOT_POSIX
sigprocmask(SIG_SETMASK, &old, NULL);
-#else
- sigsetmask (old);
-#endif
/*
* don't hang on read/write to control tty
@@ -608,12 +560,12 @@
* if client is xterm -L
*/
#ifndef __UNIXOS2__
- setpgrp(0,getpid());
+ setpgid(0,getpid());
#endif
Execute (server, environ);
Error ("no server \"%s\" in PATH\n", server[0]);
{
- char **cpp;
+ const char * const *cpp;
fprintf (stderr,
"\nUse the -- option, or make sure that %s is in your path and\n",
@@ -656,7 +608,6 @@
*/
alarm (15);
-#ifndef X_NOT_POSIX
#ifdef __UNIXOS2__
/*
* fg2003/05/06: work around a problem in EMX: sigsuspend()
@@ -671,11 +622,6 @@
sigsuspend(&old);
alarm (0);
sigprocmask(SIG_SETMASK, &old, NULL);
-#else
- sigpause (old);
- alarm (0);
- sigsetmask (old);
-#endif
if (waitforserver() == 0) {
Error("unable to connect to X server\r\n");
@@ -688,15 +634,96 @@
return(serverpid);
}
+static void
+setWindowPath(void)
+{
+ /* setting WINDOWPATH for clients */
+ Atom prop;
+ Atom actualtype;
+ int actualformat;
+ unsigned long nitems;
+ unsigned long bytes_after;
+ unsigned char *buf;
+ const char *windowpath;
+ char *newwindowpath;
+ unsigned long num;
+ char nums[10];
+ int numn;
+ prop = XInternAtom(xd, "XFree86_VT", False);
+ if (prop == None) {
+#ifdef DEBUG
+ fprintf(stderr, "no XFree86_VT atom\n");
+#endif
+ return;
+ }
+ if (XGetWindowProperty(xd, DefaultRootWindow(xd), prop, 0, 1,
+ False, AnyPropertyType, &actualtype, &actualformat,
+ &nitems, &bytes_after, &buf)) {
+#ifdef DEBUG
+ fprintf(stderr, "no XFree86_VT property\n");
+#endif
+ return;
+ }
+ if (nitems != 1) {
+#ifdef DEBUG
+ fprintf(stderr, "%lu items in XFree86_VT property!\n", nitems);
+#endif
+ XFree(buf);
+ return;
+ }
+ switch (actualtype) {
+ case XA_CARDINAL:
+ case XA_INTEGER:
+ case XA_WINDOW:
+ switch (actualformat) {
+ case 8:
+ num = (*(uint8_t *)(void *)buf);
+ break;
+ case 16:
+ num = (*(uint16_t *)(void *)buf);
+ break;
+ case 32:
+ num = (*(uint32_t *)(void *)buf);
+ break;
+ default:
+#ifdef DEBUG
+ fprintf(stderr, "format %d in XFree86_VT property!\n", actualformat);
+#endif
+ XFree(buf);
+ return;
+ }
+ break;
+ default:
+#ifdef DEBUG
+ fprintf(stderr, "type %lx in XFree86_VT property!\n", actualtype);
+#endif
+ XFree(buf);
+ return;
+ }
+ XFree(buf);
+ windowpath = getenv("WINDOWPATH");
+ numn = snprintf(nums, sizeof(nums), "%lu", num);
+ if (!windowpath) {
+ newwindowpath = malloc(10 + 1 + numn + 1);
+ sprintf(newwindowpath, "WINDOWPATH=%s", nums);
+ } else {
+ newwindowpath = malloc(10 + 1 + strlen(windowpath) + 1 + numn + 1);
+ sprintf(newwindowpath, "WINDOWPATH=%s:%s", windowpath, nums);
+ }
+ *newenvironlast++ = newwindowpath;
+ *newenvironlast = NULL;
+}
+
static int
startClient(char *client[])
{
+ setWindowPath();
if ((clientpid = vfork()) == 0) {
if (setuid(getuid()) == -1) {
Error("cannot change uid: %s\n", strerror(errno));
_exit(ERR_EXIT);
}
- setpgrp(0, getpid());
+ setpgid(0, getpid());
environ = newenviron;
#ifdef __UNIXOS2__
#undef environ
@@ -715,7 +742,7 @@
return (clientpid);
}
-#if !defined(X_NOT_POSIX) || defined(SYSV) || defined(__UNIXOS2__)
+#ifndef HAVE_KILLPG
#define killpg(pgrp, sig) kill(-(pgrp), sig)
#endif
@@ -795,11 +822,11 @@
for (oldPtr = environ; *oldPtr; oldPtr++) ;
nenvvars = (oldPtr - environ);
- newenviron = (char **) malloc ((nenvvars + 2) * sizeof(char **));
+ newenviron = (char **) malloc ((nenvvars + 3) * sizeof(char **));
if (!newenviron) {
fprintf (stderr,
"%s: unable to allocate %d pointers for environment\n",
- program, nenvvars + 2);
+ program, nenvvars + 3);
exit (1);
}
@@ -811,11 +838,13 @@
/* copy pointers to other variables */
for (oldPtr = environ; *oldPtr; oldPtr++) {
- if (strncmp (*oldPtr, "DISPLAY=", 8) != 0) {
+ if (strncmp (*oldPtr, "DISPLAY=", 8) != 0
+ && strncmp (*oldPtr, "WINDOWPATH=", 11) != 0) {
*newPtr++ = *oldPtr;
}
}
*newPtr = NULL;
+ newenvironlast=newPtr;
return;
}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/xinit-1.0.3/xinit.man new/xinit-1.0.4/xinit.man
--- old/xinit-1.0.3/xinit.man 2006-10-12 00:15:55.000000000 +0200
+++ new/xinit-1.0.4/xinit.man 2007-05-19 08:41:16.000000000 +0200
@@ -34,7 +34,7 @@
.I client
]
.I options
-] [
+\&\.\|.\|. ] [
.B \-\^\-
[
.I server
@@ -42,7 +42,7 @@
.I display
]
.I options
-]
+\&.\|.\|. ]
.SH DESCRIPTION
The \fIxinit\fP program is used to start the X Window System server and a first
client program on systems that
@@ -112,7 +112,7 @@
This will start up a server named \fIX\fP and run the user's \fI\.xinitrc\fP,
if it exists, or else start an \fIxterm\fP.
.TP 8
-.B "xinit \-\^\- /usr/X11R6/bin/Xqdss :1"
+.B "xinit \-\^\- /usr/local/bin/Xqdss :1"
This is how one could start a specific type of server on an alternate display.
.TP 8
.B "xinit \-geometry =80x65+10+10 \-fn 8x13 \-j \-fg white \-bg navy"
@@ -164,7 +164,7 @@
.in +8
.nf
\!/bin/sh
-xinit /usr/local/lib/site.xinitrc \-\^\- /usr/X11R6/bin/X bc
+xinit /usr/local/lib/site.xinitrc \-\^\- __bindir__/X -br
.fi
.in -8
.sp
++++++ xrandr-1.2.0.tar.bz2 -> xrandr-1.2.1.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/xrandr-1.2.0/configure new/xrandr-1.2.1/configure
--- old/xrandr-1.2.0/configure 2007-02-19 06:27:15.000000000 +0100
+++ new/xrandr-1.2.1/configure 2007-06-21 12:33:50.000000000 +0200
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.61 for xrandr 1.2.0.
+# Generated by GNU Autoconf 2.61 for xrandr 1.2.1.
#
# Report bugs to https://bugs.freedesktop.org/enter_bug.cgi?product=xorg.
#
@@ -574,8 +574,8 @@
# Identity of this package.
PACKAGE_NAME='xrandr'
PACKAGE_TARNAME='xrandr'
-PACKAGE_VERSION='1.2.0'
-PACKAGE_STRING='xrandr 1.2.0'
+PACKAGE_VERSION='1.2.1'
+PACKAGE_STRING='xrandr 1.2.1'
PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg'
ac_subst_vars='SHELL
@@ -1194,7 +1194,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures xrandr 1.2.0 to adapt to many kinds of systems.
+\`configure' configures xrandr 1.2.1 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1264,7 +1264,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of xrandr 1.2.0:";;
+ short | recursive ) echo "Configuration of xrandr 1.2.1:";;
esac
cat <<\_ACEOF
@@ -1359,7 +1359,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-xrandr configure 1.2.0
+xrandr configure 1.2.1
generated by GNU Autoconf 2.61
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
@@ -1373,7 +1373,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by xrandr $as_me 1.2.0, which was
+It was created by xrandr $as_me 1.2.1, which was
generated by GNU Autoconf 2.61. Invocation command line was
$ $0 $@
@@ -2043,7 +2043,7 @@
# Define the identity of the package.
PACKAGE='xrandr'
- VERSION='1.2.0'
+ VERSION='1.2.1'
cat >>confdefs.h <<_ACEOF
@@ -4244,7 +4244,7 @@
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by xrandr $as_me 1.2.0, which was
+This file was extended by xrandr $as_me 1.2.1, which was
generated by GNU Autoconf 2.61. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -4297,7 +4297,7 @@
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF
ac_cs_version="\\
-xrandr config.status 1.2.0
+xrandr config.status 1.2.1
configured by $0, generated by GNU Autoconf 2.61,
with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/xrandr-1.2.0/configure.ac new/xrandr-1.2.1/configure.ac
--- old/xrandr-1.2.0/configure.ac 2007-02-19 06:27:08.000000000 +0100
+++ new/xrandr-1.2.1/configure.ac 2007-06-21 12:33:04.000000000 +0200
@@ -22,7 +22,7 @@
dnl Process this file with autoconf to create configure.
AC_PREREQ([2.57])
-AC_INIT(xrandr,[1.2.0], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],xrandr)
+AC_INIT(xrandr,[1.2.1], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],xrandr)
AM_INIT_AUTOMAKE([dist-bzip2])
AM_MAINTAINER_MODE
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/xrandr-1.2.0/xrandr.c new/xrandr-1.2.1/xrandr.c
--- old/xrandr-1.2.0/xrandr.c 2007-02-19 06:26:50.000000000 +0100
+++ new/xrandr-1.2.1/xrandr.c 2007-06-21 12:36:05.000000000 +0200
@@ -111,8 +111,17 @@
fprintf(stderr, " --right-of <output>\n");
fprintf(stderr, " --above <output>\n");
fprintf(stderr, " --below <output>\n");
+ fprintf(stderr, " --same-as <output>\n");
+ fprintf(stderr, " --set <property> <value>\n");
fprintf(stderr, " --off\n");
fprintf(stderr, " --crtc <crtc>\n");
+ fprintf(stderr, " --newmode <name> <clock MHz>\n");
+ fprintf(stderr, " <hdisp> <hsync-start> <hsync-end> <htotal>\n");
+ fprintf(stderr, " <vdisp> <vsync-start> <vsync-end> <vtotal>\n");
+ fprintf(stderr, " [+HSync] [-HSync] [+VSync] [-VSync]\n");
+ fprintf(stderr, " --rmmode <name>\n");
+ fprintf(stderr, " --addmode <output> <mode>\n");
+ fprintf(stderr, " --delmode <output> <mode>\n");
#endif
exit(1);
@@ -159,6 +168,7 @@
case RR_Reflect_X|RR_Reflect_Y:
return "X and Y axis";
}
+ return "invalid reflection";
}
#if HAS_RANDR_1_2
@@ -167,7 +177,7 @@
} policy_t;
typedef enum _relation {
- left_of, right_of, above, below
+ left_of, right_of, above, below, same_as,
} relation_t;
typedef enum _changes {
@@ -180,6 +190,7 @@
changes_reflection = (1 << 5),
changes_automatic = (1 << 6),
changes_refresh = (1 << 7),
+ changes_property = (1 << 8),
} changes_t;
typedef enum _name_kind {
@@ -199,6 +210,8 @@
typedef struct _crtc crtc_t;
typedef struct _output output_t;
+typedef struct _umode umode_t;
+typedef struct _output_prop output_prop_t;
struct _crtc {
name_t crtc;
@@ -213,11 +226,19 @@
int noutput;
};
+struct _output_prop {
+ struct _output_prop *next;
+ char *name;
+ char *value;
+};
+
struct _output {
struct _output *next;
changes_t changes;
+ output_prop_t *props;
+
name_t output;
XRROutputInfo *output_info;
@@ -228,6 +249,8 @@
float refresh;
XRRModeInfo *mode_info;
+ name_t addmode;
+
relation_t relation;
char *relative_to;
@@ -237,6 +260,20 @@
Bool automatic;
};
+typedef enum _umode_action {
+ umode_create, umode_destroy, umode_add, umode_delete
+} umode_action_t;
+
+
+struct _umode {
+ struct _umode *next;
+
+ umode_action_t action;
+ XRRModeInfo mode;
+ name_t output;
+ name_t name;
+};
+
static char *connection[3] = {
"connected",
"disconnected",
@@ -258,6 +295,7 @@
static output_t *outputs = NULL;
static output_t **outputs_tail = &outputs;
static crtc_t *crtcs;
+static umode_t *umodes;
static int num_crtcs;
static XRRScreenResources *res;
static int fb_width = 0, fb_height = 0;
@@ -412,7 +450,7 @@
break;
if ((common & name_string) && !strcmp (name->string, output->output.string))
break;
- if ((common & name_index) & name->index == output->output.index)
+ if ((common & name_index) && name->index == output->output.index)
break;
}
return output;
@@ -516,6 +554,15 @@
return find_mode (&mode_name, 0);
}
+static XRRModeInfo *
+find_mode_by_name (char *name)
+{
+ name_t mode_name;
+ init_name (&mode_name);
+ set_name_string (&mode_name, name);
+ return find_mode (&mode_name, 0);
+}
+
static
XRRModeInfo *
find_mode_for_output (output_t *output, name_t *name)
@@ -852,8 +899,6 @@
static Status
crtc_disable (crtc_t *crtc)
{
- XRRCrtcInfo *crtc_info = crtc->crtc_info;
-
if (verbose)
printf ("crtc %d: disable\n", crtc->crtc.index);
@@ -919,7 +964,7 @@
screen_revert (void)
{
if (verbose)
- printf ("screen %d: revert\n");
+ printf ("screen %d: revert\n", screen);
if (dryrun)
return;
@@ -1183,7 +1228,7 @@
for (c = 0; c < output->output_info->ncrtc; c++)
{
crtc_t *crtc;
- int l, o;
+ int l;
output_t *other;
crtc = find_crtc_by_xid (output->output_info->crtcs[c]);
@@ -1242,6 +1287,8 @@
if (!(output->changes & changes_relation)) continue;
+ if (output->mode_info == NULL) continue;
+
init_name (&relation_name);
set_name_string (&relation_name, output->relative_to);
relation = find_output (&relation_name);
@@ -1282,6 +1329,9 @@
output->x = relation->x;
output->y = relation->y + mode_height (relation->mode_info, relation->rotation);
break;
+ case same_as:
+ output->x = relation->x;
+ output->y = relation->y;
}
output->changes |= changes_position;
any_set = True;
@@ -1397,10 +1447,11 @@
int ret = 0;
#if HAS_RANDR_1_2
output_t *output = NULL;
- char *crtc;
policy_t policy = clone;
Bool setit_1_2 = False;
Bool query_1_2 = False;
+ Bool modeit = False;
+ Bool propit = False;
Bool query_1 = False;
int major, minor;
#endif
@@ -1600,6 +1651,29 @@
output->changes |= changes_relation;
continue;
}
+ if (!strcmp ("--same-as", argv[i])) {
+ if (++i>=argc) usage ();
+ if (!output) usage();
+ output->relation = same_as;
+ output->relative_to = argv[i];
+ output->changes |= changes_relation;
+ continue;
+ }
+ if (!strcmp ("--set", argv[i])) {
+ output_prop_t *prop;
+ if (!output) usage();
+ prop = malloc (sizeof (output_prop_t));
+ prop->next = output->props;
+ output->props = prop;
+ if (++i>=argc) usage ();
+ prop->name = argv[i];
+ if (++i>=argc) usage ();
+ prop->value = argv[i];
+ propit = True;
+ output->changes |= changes_property;
+ setit_1_2 = True;
+ continue;
+ }
if (!strcmp ("--off", argv[i])) {
if (!output) usage();
set_name_xid (&output->mode, None);
@@ -1649,7 +1723,8 @@
output->automatic = True;
output->changes |= changes_automatic;
}
- automatic = True;
+ else
+ automatic = True;
setit_1_2 = True;
continue;
}
@@ -1663,6 +1738,102 @@
query_1 = True;
continue;
}
+ if (!strcmp ("--newmode", argv[i]))
+ {
+ umode_t *m = malloc (sizeof (umode_t));
+ float clock;
+
+ ++i;
+ if (i + 9 >= argc) usage ();
+ m->mode.name = argv[i];
+ m->mode.nameLength = strlen (argv[i]);
+ i++;
+ if (sscanf (argv[i++], "%f", &clock) != 1)
+ usage ();
+ m->mode.dotClock = clock * 1e6;
+
+ if (sscanf (argv[i++], "%d", &m->mode.width) != 1) usage();
+ if (sscanf (argv[i++], "%d", &m->mode.hSyncStart) != 1) usage();
+ if (sscanf (argv[i++], "%d", &m->mode.hSyncEnd) != 1) usage();
+ if (sscanf (argv[i++], "%d", &m->mode.hTotal) != 1) usage();
+ if (sscanf (argv[i++], "%d", &m->mode.height) != 1) usage();
+ if (sscanf (argv[i++], "%d", &m->mode.vSyncStart) != 1) usage();
+ if (sscanf (argv[i++], "%d", &m->mode.vSyncEnd) != 1) usage();
+ if (sscanf (argv[i++], "%d", &m->mode.vTotal) != 1) usage();
+ m->mode.modeFlags = 0;
+ while (i < argc) {
+ static const struct {
+ char *string;
+ unsigned long flag;
+ } mode_flags[] = {
+ { "+HSync", RR_HSyncPositive },
+ { "-HSync", RR_HSyncNegative },
+ { "+VSync", RR_VSyncPositive },
+ { "-VSync", RR_VSyncNegative },
+ { "Interlace", RR_Interlace },
+ { "DoubleScan", RR_DoubleScan },
+ { "CSync", RR_CSync },
+ { "+CSync", RR_CSyncPositive },
+ { "-CSync", RR_CSyncNegative },
+ { NULL, 0 }
+ };
+ int f;
+
+ for (f = 0; mode_flags[f].string; f++)
+ if (!strcasecmp (mode_flags[f].string, argv[i]))
+ break;
+
+ if (!mode_flags[f].string)
+ break;
+ m->mode.modeFlags |= mode_flags[f].flag;
+ i++;
+ }
+ m->next = umodes;
+ m->action = umode_create;
+ umodes = m;
+ modeit = True;
+ continue;
+ }
+ if (!strcmp ("--rmmode", argv[i]))
+ {
+ umode_t *m = malloc (sizeof (umode_t));
+
+ if (++i>=argc) usage ();
+ set_name (&m->name, argv[i], name_string|name_xid);
+ m->action = umode_destroy;
+ m->next = umodes;
+ umodes = m;
+ modeit = True;
+ continue;
+ }
+ if (!strcmp ("--addmode", argv[i]))
+ {
+ umode_t *m = malloc (sizeof (umode_t));
+
+ if (++i>=argc) usage ();
+ set_name (&m->output, argv[i], name_string|name_xid);
+ if (++i>=argc) usage();
+ set_name (&m->name, argv[i], name_string|name_xid);
+ m->action = umode_add;
+ m->next = umodes;
+ umodes = m;
+ modeit = True;
+ continue;
+ }
+ if (!strcmp ("--delmode", argv[i]))
+ {
+ umode_t *m = malloc (sizeof (umode_t));
+
+ if (++i>=argc) usage ();
+ set_name (&m->output, argv[i], name_string|name_xid);
+ if (++i>=argc) usage();
+ set_name (&m->name, argv[i], name_string|name_xid);
+ m->action = umode_delete;
+ m->next = umodes;
+ umodes = m;
+ modeit = True;
+ continue;
+ }
#endif
usage();
}
@@ -1698,17 +1869,134 @@
if (major > 1 || (major == 1 && minor >= 2))
has_1_2 = True;
- if (setit_1_2)
+ if (has_1_2 && modeit)
{
- XRROutputInfo *output_info;
- XRRCrtcInfo *crtc_info;
- XRRCrtcInfo *crtc_cur;
- XRRModeInfo *mode_info;
- RROutput *crtc_outputs;
- int n_crtc_output;
- int c, o, m;
- int om, sm;
+ umode_t *m;
+ get_screen ();
+ get_crtcs();
+ get_outputs();
+
+ for (m = umodes; m; m = m->next)
+ {
+ XRRModeInfo *e;
+ output_t *o;
+
+ switch (m->action) {
+ case umode_create:
+ XRRCreateMode (dpy, root, &m->mode);
+ break;
+ case umode_destroy:
+ e = find_mode (&m->name, 0);
+ if (!e)
+ fatal ("cannot find mode \"%s\"\n", m->name.string);
+ XRRDestroyMode (dpy, e->id);
+ break;
+ case umode_add:
+ o = find_output (&m->output);
+ if (!o)
+ fatal ("cannot find output \"%s\"\n", m->output.string);
+ e = find_mode (&m->name, 0);
+ if (!e)
+ fatal ("cannot find mode \"%s\"\n", m->name.string);
+ XRRAddOutputMode (dpy, o->output.xid, e->id);
+ break;
+ case umode_delete:
+ o = find_output (&m->output);
+ if (!o)
+ fatal ("cannot find output \"%s\"\n", m->output.string);
+ e = find_mode (&m->name, 0);
+ if (!e)
+ fatal ("cannot find mode \"%s\"\n", m->name.string);
+ XRRDeleteOutputMode (dpy, o->output.xid, e->id);
+ break;
+ }
+ }
+ if (!setit_1_2)
+ {
+ XSync (dpy, False);
+ exit (0);
+ }
+ }
+ if (has_1_2 && propit)
+ {
+
+ get_screen ();
+ get_crtcs();
+ get_outputs();
+
+ for (output = outputs; output; output = output->next)
+ {
+ output_prop_t *prop;
+
+ for (prop = output->props; prop; prop = prop->next)
+ {
+ Atom name = XInternAtom (dpy, prop->name, False);
+ Atom type;
+ int format;
+ unsigned char *data;
+ int nelements;
+ int int_value;
+ unsigned long ulong_value;
+ unsigned char *prop_data;
+ int actual_format;
+ unsigned long nitems, bytes_after;
+ Atom actual_type;
+ XRRPropertyInfo *propinfo;
+
+ type = AnyPropertyType;
+ format=0;
+
+ if (XRRGetOutputProperty (dpy, output->output.xid, name,
+ 0, 100, False, False,
+ AnyPropertyType,
+ &actual_type, &actual_format,
+ &nitems, &bytes_after, &prop_data) == Success &&
+
+ (propinfo = XRRQueryOutputProperty(dpy, output->output.xid,
+ name)))
+ {
+ type = actual_type;
+ format = actual_format;
+ }
+
+ if ((type == XA_INTEGER || type == AnyPropertyType) &&
+ (sscanf (prop->value, "%d", &int_value) == 1 ||
+ sscanf (prop->value, "0x%x", &int_value) == 1))
+ {
+ type = XA_INTEGER;
+ ulong_value = int_value;
+ data = (unsigned char *) &ulong_value;
+ nelements = 1;
+ format = 32;
+ }
+ else if ((type == XA_ATOM))
+ {
+ ulong_value = XInternAtom (dpy, prop->value, False);
+ data = (unsigned char *) &ulong_value;
+ nelements = 1;
+ format = 32;
+ }
+ else if ((type == XA_STRING || type == AnyPropertyType))
+ {
+ type = XA_STRING;
+ data = (unsigned char *) prop->value;
+ nelements = strlen (prop->value);
+ format = 8;
+ }
+ XRRChangeOutputProperty (dpy, output->output.xid,
+ name, type, format, PropModeReplace,
+ data, nelements);
+ }
+ }
+ if (!setit_1_2)
+ {
+ XSync (dpy, False);
+ exit (0);
+ }
+ }
+ if (setit_1_2)
+ {
get_screen ();
get_crtcs ();
get_outputs ();
@@ -1801,6 +2089,9 @@
if (query_1_2 || (query && has_1_2 && !query_1))
{
output_t *output;
+ int m;
+
+#define ModeShown 0x80000000
get_screen ();
get_crtcs ();
@@ -1871,7 +2162,7 @@
printf ("\tIdentifier: 0x%x\n", output->output.xid);
printf ("\tTimestamp: %d\n", output_info->timestamp);
printf ("\tSubpixel: %s\n", order[output_info->subpixel_order]);
- printf ("\tClones: ");
+ printf ("\tClones: ");
for (j = 0; j < output_info->nclone; j++)
{
output_t *clone = find_output_by_xid (output_info->clones[j]);
@@ -1926,7 +2217,7 @@
{
printf("\t%s: %d (0x%08x)",
XGetAtomName (dpy, props[j]),
- *(INT32 *)prop);
+ *(INT32 *)prop, *(INT32 *)prop);
if (propinfo->range && propinfo->num_values > 0) {
printf(" range%s: ",
@@ -1938,6 +2229,26 @@
}
printf("\n");
+ } else if (actual_type == XA_ATOM &&
+ actual_format == 32)
+ {
+ printf("\t%s: %s",
+ XGetAtomName (dpy, props[j]),
+ XGetAtomName (dpy, *(Atom *)prop));
+
+ if (!propinfo->range && propinfo->num_values > 0) {
+ printf("\n\t\tsupported:");
+
+ for (k = 0; k < propinfo->num_values; k++)
+ {
+ printf(" %-12.12s", XGetAtomName (dpy,
+ propinfo->values[k]));
+ if (k % 4 == 3 && k < propinfo->num_values - 1)
+ printf ("\n\t\t ");
+ }
+ }
+ printf("\n");
+
} else if (actual_format == 8) {
printf ("\t\t%s: %s%s\n", XGetAtomName (dpy, props[j]),
prop, bytes_after ? "..." : "");
@@ -1964,6 +2275,7 @@
printf (" v: height %4d start %4d end %4d total %4d clock %6.1fHz\n",
mode->height, mode->vSyncStart, mode->vSyncEnd, mode->vTotal,
mode_refresh (mode));
+ mode->modeFlags |= ModeShown;
}
}
else
@@ -1985,6 +2297,7 @@
kmode = find_mode_by_xid (output_info->modes[k]);
if (strcmp (jmode->name, kmode->name) != 0) continue;
mode_shown[k] = True;
+ kmode->modeFlags |= ModeShown;
printf (" %6.1f", mode_refresh (kmode));
if (kmode == output->mode_info)
printf ("*");
@@ -2000,6 +2313,23 @@
free (mode_shown);
}
}
+ for (m = 0; m < res->nmode; m++)
+ {
+ XRRModeInfo *mode = &res->modes[m];
+
+ if (!(mode->modeFlags & ModeShown))
+ {
+ printf (" %s (0x%x) %6.1fMHz\n",
+ mode->name, mode->id,
+ (float)mode->dotClock / 1000000.0);
+ printf (" h: width %4d start %4d end %4d total %4d skew %4d clock %6.1fKHz\n",
+ mode->width, mode->hSyncStart, mode->hSyncEnd,
+ mode->hTotal, mode->hSkew, mode_hsync (mode) / 1000);
+ printf (" v: height %4d start %4d end %4d total %4d clock %6.1fHz\n",
+ mode->height, mode->vSyncStart, mode->vSyncEnd, mode->vTotal,
+ mode_refresh (mode));
+ }
+ }
exit (0);
}
#endif
@@ -2027,6 +2357,12 @@
}
else if (size < 0)
size = current_size;
+ else if (size >= nsize) {
+ fprintf (stderr,
+ "Size index %d is too large, there are only %d sizes\n",
+ size, nsize);
+ exit (1);
+ }
if (rot < 0)
{
@@ -2051,7 +2387,7 @@
if (rate == rates[i])
break;
if (i == nrate) {
- fprintf (stderr, "Rate %d not available for this size\n", rate);
+ fprintf (stderr, "Rate %.1f Hz not available for this size\n", rate);
exit (1);
}
}
@@ -2063,7 +2399,7 @@
major_version, minor_version);
}
- if (query) {
+ if (query || query_1) {
printf(" SZ: Pixels Physical Refresh\n");
for (i = 0; i < nsize; i++) {
printf ("%c%-2d %5d x %-5d (%4dmm x%4dmm )",
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org