aboutsummaryrefslogtreecommitdiff
path: root/share/zoneinfo/yearistype.sh
diff options
context:
space:
mode:
Diffstat (limited to 'share/zoneinfo/yearistype.sh')
-rwxr-xr-xshare/zoneinfo/yearistype.sh52
1 files changed, 31 insertions, 21 deletions
diff --git a/share/zoneinfo/yearistype.sh b/share/zoneinfo/yearistype.sh
index 809f5492a1e3..62d6365ecd9d 100755
--- a/share/zoneinfo/yearistype.sh
+++ b/share/zoneinfo/yearistype.sh
@@ -1,26 +1,36 @@
#! /bin/sh
-: '@(#)yearistype.sh 7.4'
+: '@(#)yearistype.sh 7.6'
+
+case $#-$1 in
+ 2-|2-0*|2-*[!0-9]*)
+ echo "$0: wild year - $1" >&2
+ exit 1 ;;
+esac
case $#-$2 in
- 2-even) case $1 in
- *[24680]) exit 0 ;;
- *) exit 1 ;;
- esac ;;
- 2-nonpres) case $1 in
- *[02468][048]|*[13579][26]) exit 1 ;;
- *) exit 0 ;;
- esac ;;
- 2-odd) case $1 in
- *[13579]) exit 0 ;;
- *) exit 1 ;;
- esac ;;
- 2-uspres) case $1 in
- *[02468][048]|*[13579][26]) exit 0 ;;
- *) exit 1 ;;
- esac ;;
- 2-*) echo "$0: wild type - $2" >&2
- exit 1 ;;
- *) echo "$0: usage is $0 year type" >&2
- exit 1 ;;
+ 2-even)
+ case $1 in
+ *[24680]) exit 0 ;;
+ *) exit 1 ;;
+ esac ;;
+ 2-nonpres|2-nonuspres)
+ case $1 in
+ *[02468][048]|*[13579][26]) exit 1 ;;
+ *) exit 0 ;;
+ esac ;;
+ 2-odd)
+ case $1 in
+ *[13579]) exit 0 ;;
+ *) exit 1 ;;
+ esac ;;
+ 2-uspres)
+ case $1 in
+ *[02468][048]|*[13579][26]) exit 0 ;;
+ *) exit 1 ;;
+ esac ;;
+ 2-*)
+ echo "$0: wild type - $2" >&2 ;;
esac
+
+echo "$0: usage is $0 year even|odd|uspres|nonpres|nonuspres" >&2