Ivana Varekova 280ceea
--- sysstat-7.0.4/sysstat.in.cve3852	2007-08-15 15:15:04.000000000 +0200
Ivana Varekova 280ceea
+++ sysstat-7.0.4/sysstat.in	2007-08-15 15:17:31.000000000 +0200
Ivana Varekova 280ceea
@@ -20,13 +20,11 @@
Ivana Varekova 280ceea
 
Ivana Varekova 280ceea
 RETVAL=0
Ivana Varekova 280ceea
 HISTORY=0
Ivana Varekova 280ceea
-TMPDIR=/var/run/ 
Ivana Varekova 280ceea
-# Remove flag indicating that sadc was successfully launched
Ivana Varekova 280ceea
-rm -f ${TMPDIR}sysstat.run
Ivana Varekova 280ceea
 
Ivana Varekova 280ceea
 # See how we were called.
Ivana Varekova 280ceea
 case "$1" in
Ivana Varekova 280ceea
   start)
Ivana Varekova 280ceea
+	exitCodeIndicator="$(mktemp /tmp/sysstat-XXXXXX)" || exit 1
Ivana Varekova 280ceea
 	[ -r /etc/sysconfig/sysstat ] && . /etc/sysconfig/sysstat
Ivana Varekova 280ceea
 	if [ ${HISTORY} -gt 28 ]
Ivana Varekova 280ceea
 	then
Ivana Varekova 280ceea
@@ -43,15 +41,15 @@ case "$1" in
Ivana Varekova 280ceea
 		CHOWN ${CURRENTDIR} ${CURRENTFILE} ${CURRENTDIR}/${CURRENTFILE}
Ivana Varekova 280ceea
 	fi
Ivana Varekova 280ceea
         echo -n "Calling the system activity data collector (sadc): "
Ivana Varekova 280ceea
-        SU SA_LIB_DIR/sadc -F -L - && touch ${TMPDIR}sysstat.run QUOTE
Ivana Varekova 280ceea
+        SU SA_LIB_DIR/sadc -F -L - || rm -f ${exitCodeIndicator} QUOTE
Ivana Varekova 280ceea
 
Ivana Varekova 280ceea
 	# Try to guess if sadc was successfully launched. The difficulty
Ivana Varekova 280ceea
 	# here is that the exit code is lost when the above command is
Ivana Varekova 280ceea
 	# run via "su foo -c ..."
Ivana Varekova 280ceea
-	if [ ! -f ${TMPDIR}sysstat.run ]; then
Ivana Varekova 280ceea
-		RETVAL=1
Ivana Varekova 280ceea
+	if [ -f "${exitCodeIndicator}" ]; then
Ivana Varekova 280ceea
+		rm -f ${exitCodeIndicator}
Ivana Varekova 280ceea
 	else
Ivana Varekova 280ceea
-		rm -f ${TMPDIR}sysstat.run 
Ivana Varekova 280ceea
+		RETVAL=1
Ivana Varekova 280ceea
 	fi
Ivana Varekova 280ceea
         echo
Ivana Varekova 280ceea
         ;;