From http://www.jwz.org/xscreensaver/xscreensaver-5.22.tar.gz
[xscreensaver] / driver / exec.c
index 0f2aaa21dbef584321858c9747c4c377bc44750c..38ca88a0f26c687b5c55ba63b9515f8750e5fae9 100644 (file)
@@ -1,5 +1,5 @@
 /* exec.c --- executes a program in *this* pid, without an intervening process.
- * xscreensaver, Copyright (c) 1991-2006 Jamie Zawinski <jwz@jwz.org>
+ * xscreensaver, Copyright (c) 1991-2013 Jamie Zawinski <jwz@jwz.org>
  *
  * Permission to use, copy, modify, distribute, and sell this software and its
  * documentation for any purpose is hereby granted without fee, provided that
@@ -181,8 +181,7 @@ exec_command (const char *shell, const char *command, int nice_level)
   int hairy_p;
 
 #ifndef VMS
-  if (nice != 0)
-    nice_process (nice_level);
+  nice_process (nice_level);
 
   hairy_p = !!strpbrk (command, "*?$&!<>[];`'\\\"=");
   /* note: = is in the above because of the sh syntax "FOO=bar cmd". */
@@ -287,6 +286,7 @@ on_path_p (const char *program)
       strcat (p2, "/");
       strcat (p2, cmd);
       result = (0 == stat (p2, &st));
+      free (p2);
       if (result)
         goto DONE;
       token = strtok (0, ":");