[Pkg-sysvinit-commits] r1205 - in sysvinit/trunk/debian: . sysv-rc/etc/init.d

pere at alioth.debian.org pere at alioth.debian.org
Wed Jan 9 17:28:43 UTC 2008


Author: pere
Date: 2008-01-09 17:28:43 +0000 (Wed, 09 Jan 2008)
New Revision: 1205

Modified:
   sysvinit/trunk/debian/changelog
   sysvinit/trunk/debian/sysv-rc/etc/init.d/rc
Log:
  * Optimized the startpar case of init.d/rc to only call the progress
    bar API once for each startpar invocation.

Modified: sysvinit/trunk/debian/changelog
===================================================================
--- sysvinit/trunk/debian/changelog	2008-01-08 00:17:00 UTC (rev 1204)
+++ sysvinit/trunk/debian/changelog	2008-01-09 17:28:43 UTC (rev 1205)
@@ -53,6 +53,8 @@
     patch from Kel Modderman.
   * Updated the startpar source to version 0.50 from
     <URL:ftp://ftp.suse.com/pub/projects/init/>.
+  * Optimized the startpar case of init.d/rc to only call the progress
+    bar API once for each startpar invocation.
 
  -- Petter Reinholdtsen <pere at debian.org>  Mon, 31 Dec 2007 12:18:42 +0100
 

Modified: sysvinit/trunk/debian/sysv-rc/etc/init.d/rc
===================================================================
--- sysvinit/trunk/debian/sysv-rc/etc/init.d/rc	2008-01-08 00:17:00 UTC (rev 1204)
+++ sysvinit/trunk/debian/sysv-rc/etc/init.d/rc	2008-01-09 17:28:43 UTC (rev 1205)
@@ -144,18 +144,19 @@
 					set -- "$action"
 					$debug . "$script"
 					PATH="$RC_SAVE_PATH"
+					startup_progress
 					;;
 				  *)
 					newscripts="$newscripts $script"
+					step=$(($step + $step_change))
 					;;
 				esac
-				startup_progress
 			done
 			scripts="$newscripts"
 		else
-			# Update progress bar for each 
+			# Update progress bar counter and jump to the new position
 			for script in $scripts ; do
-				startup_progress
+				step=$(($step + $step_change))
 			done
 		fi
 
@@ -164,6 +165,13 @@
 		# within startpar.  The .sh hack above make this
 		# problem irrelevant. [pere 2005-09-10]
 		[ -n "$scripts" ] && $debug startpar -a $action $scripts
+
+		# Jump back one step to compencate for stepping one
+		# time too many in the for loop, and to keep the same
+		# location as the startup_progress call in the *.sh
+		# case.
+		step=$(($step - $step_change))
+		startup_progress
 	}
 	;;
   none|*)




More information about the Pkg-sysvinit-commits mailing list