Bug#343602: xserver-xorg: [a-z] must be used in maintainer scripts only under C locale
Package: xserver-xorg
Version: 6.8.2.dfsg.1-11
Severity: normal
Tags: patch
Hi,
[a-z] may not represent all 26 ASCII lowercase letters in regular
expressions, eg. Estonian collation sorts z between s and t:
$ LC_ALL=et_EE.UTF-8 expr tuv : [a-z]
0
$ LC_ALL=C expr tuv : [a-z]
1
One must then switch to C locale to avoid those collation issues,
see attached patch.
Thanks
Denis
Index: debian/xserver-xorg.config.in
===================================================================
--- debian/xserver-xorg.config.in (révision 950)
+++ debian/xserver-xorg.config.in (copie de travail)
@@ -244,13 +244,13 @@
#
# Accept any non-null sequence of lowercase letters followed by a
# non-null sequence of decimal digits. This handles "fbN" and "nameN".
- expr "$RET" : "SBUS:[a-z]\+[0-9]\+" >/dev/null 2>&1 && break
+ LC_ALL=C expr "$RET" : "SBUS:[a-z]\+[0-9]\+" >/dev/null 2>&1 && break
# Now for the PROM path. I am lazy; accept a slash followed a non-null
# sequence of letters and commas, an at sign, a non-null sequence of
# hexadecimal digits, a comma, and another non-null sequence of
# hexadecimal digits. Furthermore, accept multiple occurences of this
# entire sequence. Whew.
- expr "$RET" : "SBUS:\(/[A-Za-z,]\+@[0-9A-Fa-f]\+,[0-9A-Fa-f]\+\)\+$" \
+ LC_ALL=C expr "$RET" : "SBUS:\(/[A-Za-z,]\+@[0-9A-Fa-f]\+,[0-9A-Fa-f]\+\)\+$" \
>/dev/null 2>&1 && break
;;
[0-9])
Reply to: