http://ftp.x.org/contrib/applications/xscreensaver-3.02.tar.gz
authorZygo Blaxell <zblaxell@hungrycats.org>
Mon, 2 Mar 2009 05:42:30 +0000 (00:42 -0500)
committerZygo Blaxell <zblaxell@hungrycats.org>
Mon, 2 Mar 2009 05:42:30 +0000 (00:42 -0500)
-rw-r--r-- 1 zblaxell zblaxell 957244 Oct 24  1998 xscreensaver-3.02.tar.gz
a3f2167b0c5ee748880d60035f2869b41c438804  xscreensaver-3.02.tar.gz

12 files changed:
README
config.h.in
configure
configure.in
driver/XScreenSaver.ad.in
driver/remote.c
driver/timers.c
driver/xscreensaver-command.man
driver/xscreensaver-demo.man
driver/xscreensaver.man
utils/version.h
xscreensaver.lsm

diff --git a/README b/README
index acd0497a5d1b364593b56fe32ef9c9fcd4e8ca46..6473e9504f204a7ca7804fa4815170f99ed24932 100644 (file)
--- a/README
+++ b/README
@@ -77,6 +77,7 @@ http://www.jwz.org/xscreensaver/.
 
                               ============
 
 
                               ============
 
+Changes since 3.01:   * Not everyone has sys/select.h, sigh...
 Changes since 3.00:   * Some fixes to `reflect'.
                      * Configure tweaks.
                      * Made it log unsuccessful attempts to unlock the screen
 Changes since 3.00:   * Some fixes to `reflect'.
                      * Configure tweaks.
                      * Made it log unsuccessful attempts to unlock the screen
index 98424f9b51df116a60ba26c39b9b82262b87bb92..4891a2543919fb5c2341a916947936da33d37a7c 100644 (file)
 /* Define if you have the <crypt.h> header file.  */
 #undef HAVE_CRYPT_H
 
 /* Define if you have the <crypt.h> header file.  */
 #undef HAVE_CRYPT_H
 
+/* Define if you have <sys/select.h> that defines fd_set and FD_SET.  */
+#undef HAVE_SYS_SELECT_H
+
 /* Define to use sigaction() instead of signal() for SIGCHLD-related activity.
    This is necessary at least on SCO OpenServer 5, due to a Unix kernel bug.
  */
 /* Define to use sigaction() instead of signal() for SIGCHLD-related activity.
    This is necessary at least on SCO OpenServer 5, due to a Unix kernel bug.
  */
index c340a6797fb9df55181a9f33fee0d629eda80503..6582f349dd01789f442cb2e58a0f3b593202cf92 100755 (executable)
--- a/configure
+++ b/configure
@@ -1841,7 +1841,7 @@ fi
 done
 
 
 done
 
 
-for ac_hdr in unistd.h crypt.h
+for ac_hdr in unistd.h crypt.h sys/select.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
index 62495c42e5b00b643c7eeea30d635b9bf9ce64b1..8dec22a968321925be7f73dcba674c8e93ab79dc 100644 (file)
@@ -149,7 +149,7 @@ fi
 AC_CHECK_FUNCS(select fcntl uname nice setpriority getcwd getwd putenv)
 AC_CHECK_FUNCS(sigaction syslog)
 
 AC_CHECK_FUNCS(select fcntl uname nice setpriority getcwd getwd putenv)
 AC_CHECK_FUNCS(sigaction syslog)
 
-AC_CHECK_HEADERS(unistd.h crypt.h)
+AC_CHECK_HEADERS(unistd.h crypt.h sys/select.h)
 
 dnl    /usr/local/src/ssh-1.2.17/putenv.c -- AC_REPLACE_FUNCS(putenv)
 
 
 dnl    /usr/local/src/ssh-1.2.17/putenv.c -- AC_REPLACE_FUNCS(putenv)
 
index ba06bb857a231f9065be0a47f79a09ec162c06e6..df96ad1058ec349fea92673c705388a1415a391c 100644 (file)
@@ -4,8 +4,8 @@
 !            a screen saver and locker for the X window system
 !                            by Jamie Zawinski
 !
 !            a screen saver and locker for the X window system
 !                            by Jamie Zawinski
 !
-!                              version 3.01
-!                                24-Oct-98
+!                              version 3.02
+!                                25-Oct-98
 !
 ! See "man xscreensaver" for more info.  The latest version is always
 ! available at http://www.jwz.org/xscreensaver/
 !
 ! See "man xscreensaver" for more info.  The latest version is always
 ! available at http://www.jwz.org/xscreensaver/
index 31d4580cef1886604958892e6142226310eebcc1..0a262e0f8559a566b585bd1210e569c031f0a074 100644 (file)
 #include <stdlib.h>
 #include <sys/time.h>
 #include <sys/types.h>
 #include <stdlib.h>
 #include <sys/time.h>
 #include <sys/types.h>
-#include <sys/select.h>
+
+#ifdef HAVE_SYS_SELECT_H
+# include <sys/select.h>
+#endif /* HAVE_SYS_SELECT_H */
 
 #ifdef HAVE_UNISTD_H
 # include <unistd.h>
 
 #ifdef HAVE_UNISTD_H
 # include <unistd.h>
index c909287cc2968290ced54bb7fb8cb2b173df555a..205906b527da4d5fabeef7cc395474ff10dc7746 100644 (file)
@@ -476,7 +476,9 @@ sleep_until_idle (saver_info *si, Bool until_idle_p)
         */
        if (!until_idle_p)
          {
         */
        if (!until_idle_p)
          {
-           if (si->demoing_p && event.xany.type == MotionNotify)
+           if (si->demoing_p &&
+               (event.xany.type == MotionNotify ||
+                event.xany.type == KeyRelease))
              /* When we're demoing a single hack, mouse motion doesn't
                 cause deactivation.  Only clicks and keypresses do. */
              ;
              /* When we're demoing a single hack, mouse motion doesn't
                 cause deactivation.  Only clicks and keypresses do. */
              ;
index 7be17e5230c2ce4fe1fab439a5cc66c7a8555d55..5a7bbb6198f169e9097569e7f5378d3be35dd1c7 100644 (file)
@@ -11,7 +11,7 @@
 .if n .sp 1
 .if t .sp .5
 ..
 .if n .sp 1
 .if t .sp .5
 ..
-.TH XScreenSaver 1 "24-Oct-98 (3.01)" "X Version 11"
+.TH XScreenSaver 1 "25-Oct-98 (3.02)" "X Version 11"
 .SH NAME
 xscreensaver-command - control a running xscreensaver process
 .SH SYNOPSIS
 .SH NAME
 xscreensaver-command - control a running xscreensaver process
 .SH SYNOPSIS
index 57855825e5d272c314bec92b088ffbe8709c34a0..e9e504dd3073c7c34e0160c99e1c262cc965670c 100644 (file)
@@ -11,7 +11,7 @@
 .if n .sp 1
 .if t .sp .5
 ..
 .if n .sp 1
 .if t .sp .5
 ..
-.TH XScreenSaver 1 "24-Oct-98 (3.01)" "X Version 11"
+.TH XScreenSaver 1 "25-Oct-98 (3.02)" "X Version 11"
 .SH NAME
 xscreensaver-demo - interactively control the background xscreensaver daemon
 .SH SYNOPSIS
 .SH NAME
 xscreensaver-demo - interactively control the background xscreensaver daemon
 .SH SYNOPSIS
@@ -77,8 +77,6 @@ so that the settings will persist next time.
 .B Quit
 Exits the \fIxscreensaver-demo\fP program.  The background \fIxscreensaver\fP
 daemon will continue running as before.
 .B Quit
 Exits the \fIxscreensaver-demo\fP program.  The background \fIxscreensaver\fP
 daemon will continue running as before.
-.BR xscreensaver\-command (1).
-
 .P
 The Preferences dialog box lets you change the following settings.
 
 .P
 The Preferences dialog box lets you change the following settings.
 
@@ -156,25 +154,25 @@ screen-saving mode.
 accepts the following command line options.
 .TP 8
 .B \-display \fIhost:display.screen\fP
 accepts the following command line options.
 .TP 8
 .B \-display \fIhost:display.screen\fP
-The X display to use.  The \fIxscreensaver\-demo\fP program will control
-the \fIxscreensaver\fP daemon that is running on that same display.
-
-It's important that the \fIxscreensaver\fP and \fIxscreensaver\-demo\fP
-processes be running on the same machine, or at least, on two machines
-that share a file system: when \fIxscreensaver\-demo\fP writes a new version
-of the \fI~/.xscreensaver\fP file, it's important that the \fIxscreensaver\fP
-see that same file.  If the two processes are seeing 
-different \fI~/.xscreensaver\fP files, things will malfunction.
+The X display to use.  The \fIxscreensaver\-demo\fP program will open its
+window on that display, and also control the \fIxscreensaver\fP daemon that
+is managing that same display.
 .TP 8
 .B \-prefs
 Start up in Preferences mode: this is just like launching the program with
 no arguments, and then pressing the \fIPreferences\fP button.
 .TP 8
 .B \-prefs
 Start up in Preferences mode: this is just like launching the program with
 no arguments, and then pressing the \fIPreferences\fP button.
+.P
+It is important that the \fIxscreensaver\fP and \fIxscreensaver\-demo\fP
+processes be running on the same machine, or at least, on two machines
+that share a file system.  When \fIxscreensaver\-demo\fP writes a new version
+of the \fI~/.xscreensaver\fP file, it's important that the \fIxscreensaver\fP
+see that same file.  If the two processes are seeing 
+different \fI~/.xscreensaver\fP files, things will malfunction.
 .SH ENVIRONMENT
 .PP
 .TP 8
 .B DISPLAY
 .SH ENVIRONMENT
 .PP
 .TP 8
 .B DISPLAY
-to get the default host and display number.  See the comments about 
-the \fI\-display\fP command-line option above.
+to get the default host and display number.
 .TP 8
 .B PATH
 to find the sub-programs to run.  However, note that the sub-programs 
 .TP 8
 .B PATH
 to find the sub-programs to run.  However, note that the sub-programs 
index ac9326ca39f11121ffcf81a7b73488927140613d..6a031b336fb7b674c3c1c80bda04786222738936 100644 (file)
@@ -11,7 +11,7 @@
 .if n .sp 1
 .if t .sp .5
 ..
 .if n .sp 1
 .if t .sp .5
 ..
-.TH XScreenSaver 1 "24-Oct-98 (3.01)" "X Version 11"
+.TH XScreenSaver 1 "25-Oct-98 (3.02)" "X Version 11"
 .SH NAME
 xscreensaver - graphics hack and screen locker, launched when the user is idle
 .SH SYNOPSIS
 .SH NAME
 xscreensaver - graphics hack and screen locker, launched when the user is idle
 .SH SYNOPSIS
@@ -62,9 +62,10 @@ For the impatient, try this:
 xscreensaver &
 xscreensaver-demo
 .EE
 xscreensaver &
 xscreensaver-demo
 .EE
-The \fIxscreensaver\-demo\fP program should pop up a dialog box
-that lets you experiment with the xscreensaver settings and graphics
-modes.
+The
+.BR xscreensaver-demo (1)
+program should pop up a dialog box that lets you experiment with the
+xscreensaver settings and graphics modes.
 
 .B Note:
 unlike
 
 .B Note:
 unlike
@@ -78,7 +79,7 @@ programs.
 .SH CONFIGURATION
 Options to \fIxscreensaver\fP are specified in one of two places: in 
 a \fI.xscreensaver\fP file in your home directory; or in the X resource
 .SH CONFIGURATION
 Options to \fIxscreensaver\fP are specified in one of two places: in 
 a \fI.xscreensaver\fP file in your home directory; or in the X resource
-database.  If a \fI.xscreensaver\fP file exists, it overrides any settings
+database.  If the \fI.xscreensaver\fP file exists, it overrides any settings
 in the resource database.  
 
 The syntax of the \fI.xscreensaver\fP file is similar to that of
 in the resource database.  
 
 The syntax of the \fI.xscreensaver\fP file is similar to that of
@@ -306,15 +307,15 @@ If the display has multiple screens, then a different program will be run
 for each screen.  (All screens are blanked and unblanked simultaniously.)
 
 Note that you must escape the newlines; here is an example of how you
 for each screen.  (All screens are blanked and unblanked simultaniously.)
 
 Note that you must escape the newlines; here is an example of how you
-might set this in your \fI~/.Xdefaults\fP file:
+might set this in your \fI~/.xscreensaver\fP file:
 
 .RS 8
 .EX
 
 .RS 8
 .EX
-xscreensaver.programs:  \\
-        qix -root                          \\n\\
-        ico -r -faces -sleep 1 -obj ico    \\n\\
-        xdaliclock -builtin2 -root         \\n\\
-        xv -root -rmode 5 image.gif -quit  \\n
+programs:  \\
+       qix -root                          \\n\\
+       ico -r -faces -sleep 1 -obj ico    \\n\\
+       xdaliclock -builtin2 -root         \\n\\
+       xv -root -rmode 5 image.gif -quit  \\n
 .EE
 .RE
 .RS 8
 .EE
 .RE
 .RS 8
@@ -325,17 +326,17 @@ programs listed in the \fIprograms\fP resource.
 To use a program as a screensaver, two things are required: that that
 program draw on the root window (or be able to be configured to draw on
 the root window); and that that program understand ``virtual root''
 To use a program as a screensaver, two things are required: that that
 program draw on the root window (or be able to be configured to draw on
 the root window); and that that program understand ``virtual root''
-windows, as used by virtual window managers such as \fItvtwm\fP.  (Generally,
-this is accomplished by just including the \fI"vroot.h"\fP header file in
-the program's source.)
+windows, as used by virtual window managers such as
+.BR tvtwm (1).
+(Generally, this is accomplished by just including the \fI"vroot.h"\fP 
+header file in the program's source.)
 
 If there are some programs that you want to run only when using a color
 display, and others that you want to run only when using a monochrome
 display, you can specify that like this:
 
 If there are some programs that you want to run only when using a color
 display, and others that you want to run only when using a monochrome
 display, you can specify that like this:
-
 .EX
 .EX
-    mono:   mono-program  -root        \\n\\
-    color:  color-program -root        \\n\\
+       mono:   mono-program  -root        \\n\\
+       color:  color-program -root        \\n\\
 .EE
 .RE
 .RS 8
 .EE
 .RE
 .RS 8
@@ -343,17 +344,12 @@ More generally, you can specify the kind of visual that should be used for
 the window on which the program will be drawing.  For example, if one 
 program works best if it has a colormap, but another works best if it has
 a 24-bit visual, both can be accommodated:
 the window on which the program will be drawing.  For example, if one 
 program works best if it has a colormap, but another works best if it has
 a 24-bit visual, both can be accommodated:
-
 .EX
 .EX
-    PseudoColor: cmap-program  -root   \\n\\
-    TrueColor:   24bit-program -root   \\n\\
+       PseudoColor: cmap-program  -root   \\n\\
+       TrueColor:   24bit-program -root   \\n\\
 .EE
 .RE
 .RS 8
 .EE
 .RE
 .RS 8
-(This sort of thing used to be accomplished with the \fIcolorPrograms\fP
-and \fImonoPrograms\fP resources, but those resources have now been removed;
-a warning will be issued if they are used.)
-
 In addition to the symbolic visual names described above (in the discussion
 of the \fIvisualID\fP resource) one other visual name is supported in
 the \fIprograms\fP list:
 In addition to the symbolic visual names described above (in the discussion
 of the \fIvisualID\fP resource) one other visual name is supported in
 the \fIprograms\fP list:
@@ -530,13 +526,12 @@ using the \fI\-xrm\fP argument.  Most of the interesting resources have
 command-line equivalents, however.
 .SH HOW IT WORKS
 When it is time to activate the screensaver, a full-screen black window is
 command-line equivalents, however.
 .SH HOW IT WORKS
 When it is time to activate the screensaver, a full-screen black window is
-created on each screen of the display.  The window or windows is given the
-appropriate properties so that, to any subsequently-created programs, it 
-will appear to be a ``virtual root'' window.  Because of this, any program 
-which draws on the root window (and which understands virtual roots) can be
-used as a screensaver.
+created on each screen of the display.  Each window is created in such a way
+that, to any subsequently-created programs, it will appear to be a ``virtual
+root'' window.  Because of this, any program which draws on the root 
+window (and which understands virtual roots) can be used as a screensaver.
 
 
-When the user becomes active again, the screensaver windows are unmapped and
+When the user becomes active again, the screensaver windows are unmapped, and
 the running subprocesses are killed by sending them \fBSIGTERM\fP.  This is 
 also how the subprocesses are killed when the screensaver decides that it's
 time to run a different demo: the old one is killed and a new one is launched.
 the running subprocesses are killed by sending them \fBSIGTERM\fP.  This is 
 also how the subprocesses are killed when the screensaver decides that it's
 time to run a different demo: the old one is killed and a new one is launched.
@@ -880,8 +875,8 @@ how to configure the system to do this for all users automatically.
 In order for it to be safe for xscreensaver to be launched by \fIxdm\fP,
 certain precautions had to be taken, among them that xscreensaver never
 runs as \fIroot\fP.  In particular, if it is launched as root (as \fIxdm\fP
 In order for it to be safe for xscreensaver to be launched by \fIxdm\fP,
 certain precautions had to be taken, among them that xscreensaver never
 runs as \fIroot\fP.  In particular, if it is launched as root (as \fIxdm\fP
-is likely to do), xscreensaver will disavow its privileges, and switch to
-a safe user id (such as \fInobody\fP.)
+is likely to do), xscreensaver will disavow its privileges, and switch 
+itself to a safe user id (such as \fInobody\fP.)
 
 An implication of this is that if you log in as \fIroot\fP on the console, 
 xscreensaver will refuse to lock the screen (because it can't tell
 
 An implication of this is that if you log in as \fIroot\fP on the console, 
 xscreensaver will refuse to lock the screen (because it can't tell
@@ -923,8 +918,8 @@ If you get an error message like ``couldn't get password of \fIuser\fP''
 then this probably means that you're on a system in which the
 .BR getpwent (3)
 library routine can only be effectively used by root.  If this is the case, 
 then this probably means that you're on a system in which the
 .BR getpwent (3)
 library routine can only be effectively used by root.  If this is the case, 
-then \fIxscreensaver\fP must be installed as setuid to root.  Care has 
-been taken to make this a safe thing to do.  
+then \fIxscreensaver\fP must be installed as setuid to root in order for
+locking to work.  Care has been taken to make this a safe thing to do.  
 
 It also may mean that your system uses shadow passwords instead of the standard
 .BR getpwent (3)
 
 It also may mean that your system uses shadow passwords instead of the standard
 .BR getpwent (3)
@@ -1087,16 +1082,16 @@ If anyone would care to explain it to me, that would be great.
 Your mileage, therefore, may vary dramatically.
 .TP 8
 .B MesaGL and Voodoo Cards
 Your mileage, therefore, may vary dramatically.
 .TP 8
 .B MesaGL and Voodoo Cards
-If you have a 3Dfx/Voodoo card, the default settings for xscreensaver will run
-the GL-based graphics demos in such a way that they will not take advantage
-of the 3D acceleration hardware.  The solution is to change the \fBprograms\fP
-entries for the GL hacks from this:
+If you have a 3Dfx/Voodoo card, the default settings for xscreensaver will
+run the GL-based graphics demos in such a way that they will not take 
+advantage of the 3D acceleration hardware.  The solution is to change
+the \fBprograms\fP entries for the GL hacks from this:
 .EX
 .EX
-    gears -root                       \\n\\
+       gears -root                        \\n\\
 .EE
 to this:
 .EX
 .EE
 to this:
 .EX
-    MESA_GLX_FX=fullscreen  gears     \\n\\
+       MESA_GLX_FX=fullscreen  gears      \\n\\
 .EE
 That is, make sure that \fB$MESA_GLX_FX\fP is set to \fIfullscreen\fP, and
 don't tell the program to draw on the root window.  This may seem strange,
 .EE
 That is, make sure that \fB$MESA_GLX_FX\fP is set to \fIfullscreen\fP, and
 don't tell the program to draw on the root window.  This may seem strange,
@@ -1105,8 +1100,9 @@ but the setup used by Mesa and these kinds of cards \fIis\fP strange!
 For those who don't know, these cards work by sitting between your normal
 video card and the monitor, and seizing control of the monitor when it's 
 time to do 3D.  But this means that accelerated 3D only happens in full-screen
 For those who don't know, these cards work by sitting between your normal
 video card and the monitor, and seizing control of the monitor when it's 
 time to do 3D.  But this means that accelerated 3D only happens in full-screen
-mode (you can't do it in a window) and that 3D will probably drive your 
-monitor at a lower resolution, as well.  It's bizarre.
+mode (you can't do it in a window, and you can't see the output of 3D and 2D
+programs simultaniously), and that 3D will probably drive your monitor at a
+lower resolution, as well.  It's bizarre.
 .TP 8
 .B Extensions
 If you are not making use of one of the server extensions (\fBXIDLE\fP,
 .TP 8
 .B Extensions
 If you are not making use of one of the server extensions (\fBXIDLE\fP,
index 604c2b66ef0331ff47051a8dbd2340266a293dfd..d59414e7db3a7e963308938aca3c1d86a1628622 100644 (file)
@@ -1,2 +1,2 @@
 static const char screensaver_id[] =
 static const char screensaver_id[] =
-       "@(#)xscreensaver 3.01 (24-Oct-98), by Jamie Zawinski (jwz@jwz.org)";
+       "@(#)xscreensaver 3.02 (25-Oct-98), by Jamie Zawinski (jwz@jwz.org)";
index 241b03a7951987c656e2378fd6192b3f6bf756c8..9583151478e1d6107e0f3486f742075961030ea1 100644 (file)
@@ -1,7 +1,7 @@
 Begin3
 Title:          xscreensaver
 Begin3
 Title:          xscreensaver
-Version:        3.01
-Entered-date:   24OCT98
+Version:        3.02
+Entered-date:   25OCT98
 Description:    A modular screen saver and locker for the X Window System.
                 Highly customizable: allows the use of any program that
                 can draw on the root window as a display mode.
 Description:    A modular screen saver and locker for the X Window System.
                 Highly customizable: allows the use of any program that
                 can draw on the root window as a display mode.
@@ -10,15 +10,15 @@ Keywords:       screen saver, screen lock, lock, xlock, X11
 Author:         jwz@jwz.org (Jamie Zawinski)
 Maintained-by:  jwz@jwz.org (Jamie Zawinski)
 Primary-site:   http://www.jwz.org/xscreensaver/
 Author:         jwz@jwz.org (Jamie Zawinski)
 Maintained-by:  jwz@jwz.org (Jamie Zawinski)
 Primary-site:   http://www.jwz.org/xscreensaver/
-                957K xscreensaver-3.01.tar.gz
+                957K xscreensaver-3.02.tar.gz
                 24K  xscreensaver.README
                 1K   xscreensaver.lsm
 Alternate-site: sunsite.unc.edu /pub/Linux/X11/screensavers/
                 24K  xscreensaver.README
                 1K   xscreensaver.lsm
 Alternate-site: sunsite.unc.edu /pub/Linux/X11/screensavers/
-                957K xscreensaver-3.01.tar.gz
+                957K xscreensaver-3.02.tar.gz
                 24K  xscreensaver.README
                 1K   xscreensaver.lsm
 Alternate-site: ftp.x.org /contrib/applications/
                 24K  xscreensaver.README
                 1K   xscreensaver.lsm
 Alternate-site: ftp.x.org /contrib/applications/
-                957K xscreensaver-3.01.tar.gz
+                957K xscreensaver-3.02.tar.gz
                 24K  xscreensaver.README
                 1K   xscreensaver.lsm
 Platforms:      Linux, Irix, SunOS, Solaris, HPUX, AIX, FreeBSD, NetBSD,
                 24K  xscreensaver.README
                 1K   xscreensaver.lsm
 Platforms:      Linux, Irix, SunOS, Solaris, HPUX, AIX, FreeBSD, NetBSD,