1 |
There are kernel versions like 4.9.280, therefore shifting version |
2 |
components by 8 bits in kernel_is() may fail. |
3 |
|
4 |
Signed-off-by: Ulrich Müller <ulm@g.o> |
5 |
--- |
6 |
v2: Protect against empty KV_{MAJOR,MINOR,PATCH} |
7 |
|
8 |
eclass/kernel-2.eclass | 9 +++++---- |
9 |
1 file changed, 5 insertions(+), 4 deletions(-) |
10 |
|
11 |
diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass |
12 |
index 8c1740998272..05c07c4d153e 100644 |
13 |
--- a/eclass/kernel-2.eclass |
14 |
+++ b/eclass/kernel-2.eclass |
15 |
@@ -560,7 +560,7 @@ kernel_is() { |
16 |
[[ ${n} -eq 1 ]] && detect_version |
17 |
|
18 |
# Now we can continue |
19 |
- local operator test value |
20 |
+ local operator |
21 |
|
22 |
case ${1#-} in |
23 |
lt) operator="-lt"; shift;; |
24 |
@@ -572,9 +572,10 @@ kernel_is() { |
25 |
esac |
26 |
[[ $# -gt 3 ]] && die "Error in kernel-2_kernel_is(): too many parameters" |
27 |
|
28 |
- : $(( test = (KV_MAJOR << 16) + (KV_MINOR << 8) + KV_PATCH )) |
29 |
- : $(( value = (${1:-${KV_MAJOR}} << 16) + (${2:-${KV_MINOR}} << 8) + ${3:-${KV_PATCH}} )) |
30 |
- [ ${test} ${operator} ${value} ] |
31 |
+ ver_test \ |
32 |
+ "${KV_MAJOR:-0}.${KV_MINOR:-0}.${KV_PATCH:-0}" \ |
33 |
+ "${operator}" \ |
34 |
+ "${1:-${KV_MAJOR:-0}}.${2:-${KV_MINOR:-0}}.${3:-${KV_PATCH:-0}}" |
35 |
} |
36 |
|
37 |
# Capture the sources type and set DEPENDs |
38 |
-- |
39 |
2.33.0 |