summaryrefslogtreecommitdiff
path: root/openwrt/target/default/target_skeleton/bin
diff options
context:
space:
mode:
authormbm <mbm@3c298f89-4303-0410-b956-a3cf2f4a3e73>2005-03-20 05:46:41 +0000
committermbm <mbm@3c298f89-4303-0410-b956-a3cf2f4a3e73>2005-03-20 05:46:41 +0000
commit27ff7d466db78df3f480dccd768d7080ce08b702 (patch)
tree0ec16b9c0c33eb45d5b35631895327fe168f5ac1 /openwrt/target/default/target_skeleton/bin
parent34d7c8af2ff40e5fff7b67bfbe523e976987e92a (diff)
fix version checks
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@403 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'openwrt/target/default/target_skeleton/bin')
-rwxr-xr-xopenwrt/target/default/target_skeleton/bin/ipkg17
1 files changed, 9 insertions, 8 deletions
diff --git a/openwrt/target/default/target_skeleton/bin/ipkg b/openwrt/target/default/target_skeleton/bin/ipkg
index 6ceb9d4574..c9947c8fa0 100755
--- a/openwrt/target/default/target_skeleton/bin/ipkg
+++ b/openwrt/target/default/target_skeleton/bin/ipkg
@@ -20,16 +20,17 @@ set -e
set -o noglob
ipkg_is_upgrade () {
- local A B a b
- A=$(echo $1 | sed "s/[0-9]*/ & /g" | sed "s/[^ A-Za-z0-9]//g")
- B=$(echo $2 | sed "s/[0-9]*/ & /g" | sed "s/[^ A-Za-z0-9]//g")
- while [ \! -z "$A" ] && [ \! -z "$B" ]; do {
+ local A B a b
+ A=$(echo $1 | sed -r "s/([0-9]+)[^A-Za-z]?/ \1 /g").
+ B=$(echo $2 | sed -r "s/([0-9]+)[^A-Za-z]?/ \1 /g").
+ while [ \! -z "$A" ] && [ \! -z "$B" ]; do {
set $A; a=$1; shift; A=$*
set $B; b=$1; shift; B=$*
- { [ "$a" -gt "$b" ] 2>&- || [ "$a" ">" "$b" ]; } && { return 0; }
- }; done
- return 1;
-}
+ [ "$a" -lt "$b" ] 2>&- && return 1
+ { [ "$a" -gt "$b" ] 2>&- || [ "$a" ">" "$b" ]; } && return
+ }; done
+ return 1
+}
ipkg_srcs() {
local srcre="$1"