rpms/xscreensaver/FC-4 xscreensaver-4.22-dont-run-non-existent-hacks.patch, NONE, 1.1 xscreensaver.spec, 1.52, 1.53
fedora-cvs-commits at redhat.com
fedora-cvs-commits at redhat.com
Tue Jun 6 14:45:59 UTC 2006
Author: rstrode
Update of /cvs/dist/rpms/xscreensaver/FC-4
In directory cvs.devel.redhat.com:/tmp/cvs-serv5440
Modified Files:
xscreensaver.spec
Added Files:
xscreensaver-4.22-dont-run-non-existent-hacks.patch
Log Message:
- Don't run non-existent hacks. Patch provided by Vlado Potisk
(bug 176621).
xscreensaver-4.22-dont-run-non-existent-hacks.patch:
demo-Gtk.c | 47 -----------------------------------------------
exec.c | 47 +++++++++++++++++++++++++++++++++++++++++++++++
subprocs.c | 1 +
xscreensaver.h | 1 +
4 files changed, 49 insertions(+), 47 deletions(-)
--- NEW FILE xscreensaver-4.22-dont-run-non-existent-hacks.patch ---
--- xscreensaver-4.21/driver/demo-Gtk.c.OLD 2006-06-05 23:57:57.000000000 +0200
+++ xscreensaver-4.21/driver/demo-Gtk.c 2006-06-06 00:29:41.000000000 +0200
@@ -2348,53 +2348,6 @@
}
}
-
-static Bool
-on_path_p (const char *program)
-{
- int result = False;
- struct stat st;
- char *cmd = strdup (program);
- char *token = strchr (cmd, ' ');
- char *path = 0;
- int L;
-
- if (token) *token = 0;
- token = 0;
-
- if (strchr (cmd, '/'))
- {
- result = (0 == stat (cmd, &st));
- goto DONE;
- }
-
- path = getenv("PATH");
- if (!path || !*path)
- goto DONE;
-
- L = strlen (cmd);
- path = strdup (path);
- token = strtok (path, ":");
-
- while (token)
- {
- char *p2 = (char *) malloc (strlen (token) + L + 3);
- strcpy (p2, token);
- strcat (p2, "/");
- strcat (p2, cmd);
- result = (0 == stat (p2, &st));
- if (result)
- goto DONE;
- token = strtok (0, ":");
- }
-
- DONE:
- free (cmd);
- if (path) free (path);
- return result;
-}
-
-
static void
populate_hack_list (state *s)
{
--- xscreensaver-4.21/driver/exec.c.OLD 2006-06-06 00:30:26.000000000 +0200
+++ xscreensaver-4.21/driver/exec.c 2006-06-06 00:35:15.000000000 +0200
@@ -58,6 +58,7 @@
#include <string.h>
#include <stdio.h>
#include <ctype.h>
+#include <sys/stat.h>
#ifndef ESRCH
# include <errno.h>
@@ -246,3 +247,49 @@
#endif
}
+
+int
+on_path_p (const char *program)
+{
+ int result = 0;
+ struct stat st;
+ char *cmd = strdup (program);
+ char *token = strchr (cmd, ' ');
+ char *path = 0;
+ int L;
+
+ if (token) *token = 0;
+ token = 0;
+
+ if (strchr (cmd, '/'))
+ {
+ result = (0 == stat (cmd, &st));
+ goto DONE;
+ }
+
+ path = getenv("PATH");
+ if (!path || !*path)
+ goto DONE;
+
+ L = strlen (cmd);
+ path = strdup (path);
+ token = strtok (path, ":");
+
+ while (token)
+ {
+ char *p2 = (char *) malloc (strlen (token) + L + 3);
+ strcpy (p2, token);
+ strcat (p2, "/");
+ strcat (p2, cmd);
+ result = (0 == stat (p2, &st));
+ if (result)
+ goto DONE;
+ token = strtok (0, ":");
+ }
+
+ DONE:
+ free (cmd);
+ if (path) free (path);
+ return result;
+}
+
--- xscreensaver-4.21/driver/subprocs.c.OLD 2006-06-06 00:02:04.000000000 +0200
+++ xscreensaver-4.21/driver/subprocs.c 2006-06-06 00:01:35.000000000 +0200
@@ -806,6 +806,7 @@
if (!force &&
(!hack->enabled_p ||
+ !on_path_p (hack->command) ||
!select_visual_of_hack (ssi, hack)))
{
if (++retry_count > (p->screenhacks_count*4))
--- xscreensaver-4.21/driver/xscreensaver.h.OLD 2006-06-05 23:57:30.000000000 +0200
+++ xscreensaver-4.21/driver/xscreensaver.h 2006-06-05 23:57:42.000000000 +0200
@@ -427,6 +427,7 @@
extern const char *signal_name (int signal);
extern void exec_command (const char *shell, const char *command,
int nice_level);
+extern int on_path_p (const char *program);
/* =======================================================================
subprocs diagnostics
Index: xscreensaver.spec
===================================================================
RCS file: /cvs/dist/rpms/xscreensaver/FC-4/xscreensaver.spec,v
retrieving revision 1.52
retrieving revision 1.53
diff -u -r1.52 -r1.53
--- xscreensaver.spec 12 Aug 2005 13:44:53 -0000 1.52
+++ xscreensaver.spec 6 Jun 2006 14:45:57 -0000 1.53
@@ -4,7 +4,7 @@
Summary: X screen saver and locker
Name: %{name}
Version: %{version}
-Release: 6.fc4.1
+Release: 6.fc4.2
Epoch: 1
License: BSD
Group: Amusements/Graphics
@@ -18,6 +18,7 @@
Patch4: xscreensaver-4.21-use-hack-basename.patch
Patch5: xscreensaver-4.22-signal-handler-fun.patch
Patch6: xscreensaver-4.22-warn-about-extras.patch
+Patch7: xscreensaver-4.22-dont-run-non-existent-hacks.patch
Buildroot: %{_tmppath}/%{name}-root
# find_lang
@@ -78,6 +79,7 @@
%patch4 -p1 -b .use-hack-basename
%patch5 -p1 -b .signal-handler-fun
%patch6 -p1 -b .warn-about-extras
+%patch7 -p1 -b .dont-run-non-existent-hacks
if [ -x %{_datadir}/libtool/config.guess ]; then
# use system-wide copy
@@ -206,6 +208,10 @@
%defattr(-,root,root)
%changelog
+* Tue Jun 6 2006 Ray Strode <rstrode at redhat.com> 1:4.22-6.fc4.2
+- Don't run non-existent hacks. Patch provided by Vlado Potisk
+ (bug 176621).
+
* Fri Aug 12 2005 Ray Strode <rstrode at redhat.com> 1:4.22-6.fc4.1
- Fix warn about extras patch
More information about the fedora-cvs-commits
mailing list