SVN: rc-scripts/trunk/rc.d/init.d/functions

baggins baggins at pld-linux.org
Mon Jun 27 12:15:57 CEST 2011


Author: baggins
Date: Mon Jun 27 12:15:56 2011
New Revision: 12252

Modified:
   rc-scripts/trunk/rc.d/init.d/functions
Log:
- fix kernelver* functions


Modified: rc-scripts/trunk/rc.d/init.d/functions
==============================================================================
--- rc-scripts/trunk/rc.d/init.d/functions	(original)
+++ rc-scripts/trunk/rc.d/init.d/functions	Mon Jun 27 12:15:56 2011
@@ -178,17 +178,19 @@
 fi
 
 kernelver() {
-	local _x _y _z v old_IFS ver
+	local _x _y _z v v1 old_IFS ver
 	{
 		read _x _y v _z
 		old_IFS=$IFS
-		IFS='.'
+		# strip _* or -* from versions like: "2.6.25_vanilla-1", "2.6.25-1"
+		IFS='_-'
 		set -- $v
+		v1=${1}
+		IFS='.'
+		set -- $v1
 		IFS=$old_IFS
 
-		# strip _* or -* from versions like: "2.6.25_vanilla-1", "2.6.25-1"
-		ver=${3%%[-_]*}
-
+		ver=${3}
 		while [ ${#ver} -lt 3 ]; do ver="0$ver"; done
 		ver="$2$ver"
 		while [ ${#ver} -lt 6 ]; do ver="0$ver"; done
@@ -203,8 +205,12 @@
 	{
 		read _x _y v _z
 		old_IFS=$IFS
-		IFS='.'
+		# strip _* or -* from versions like: "2.6.25_vanilla-1", "2.6.25-1"
+		IFS='_-'
 		set -- $v
+		v1=${1}
+		IFS='.'
+		set -- $v1
 		IFS=$old_IFS
 		ver=$2
 		while [ ${#ver} -lt 3 ]; do ver="0$ver"; done
@@ -219,10 +225,14 @@
 	{
 		read _x _y v _z
 		old_IFS=$IFS
-		IFS='.'
+		# strip _* or -* from versions like: "2.6.25_vanilla-1", "2.6.25-1"
+		IFS='_-'
 		set -- $v
+		v1=${1}
+		IFS='.'
+		set -- $v1
 		IFS=$old_IFS
-		ver="$1$ver"
+		ver="$1"
 		while [ ${#ver} -lt 3 ]; do ver="0$ver"; done
 		echo $ver
 	} </proc/version


More information about the pld-cvs-commit mailing list