When running mysql_config without any parameters, it returns 1 as exit code. It seems like improper behaviour, because any arguments are voluntary according to usage description. So it seems it should exit with 0 when running without any parameters.
This is obviously not a serious bug, but can make problems for some tools that handle exit codes automatically.
This can be a fix:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
diff -up mariadb-5.5.34/scripts/mysql_config.sh.exitcode mariadb-5.5.34/scripts/mysql_config.sh
--- mariadb-5.5.34/scripts/mysql_config.sh.exitcode 2013-12-12 16:37:20.085758119 +0100
+++ mariadb-5.5.34/scripts/mysql_config.sh 2013-12-12 16:38:06.749781337 +0100
@@ -158,6 +158,7 @@ libs=`echo "$libs" | sed -e 's; \+; ;g'
libs_r=`echo "$libs_r" | sed -e 's; \+; ;g' | sed -e 's;^ *;;' | sed -e 's; *\$;;'`
embedded_libs=`echo "$embedded_libs" | sed -e 's; \+; ;g' | sed -e 's;^ *;;' | sed -e 's; *\$;;'`
+# 1st argument is exit code, 1 if omitted
usage () {
cat <<EOF
Usage: $0 [OPTIONS]
@@ -176,10 +177,10 @@ Options:
pkglibdir [$pkglibdir]
plugindir [$plugindir]
EOF
- exit 1
+ exit ${1:-1}
}
-if test $# -le 0; then usage; fi
+if test $# -le 0; then usage 0; fi
while test $# -gt 0; do
case $1 in