summaryrefslogtreecommitdiff
path: root/mysys
diff options
context:
space:
mode:
authorAndrei Elkin <aelkin@mysql.com>2009-11-30 14:34:39 +0200
committerAndrei Elkin <aelkin@mysql.com>2009-11-30 14:34:39 +0200
commita6f2076c03bf0b39d7c8f42655b4c6ffe7f3ecb3 (patch)
treec5510a774ac5e8722c26070e21e3d266d6408381 /mysys
parent71a1b1e755074fa816369a7967ed9bd2758e9f55 (diff)
parentc5a30828067468d08007bdb36903e411652c8e4b (diff)
downloadmariadb-git-a6f2076c03bf0b39d7c8f42655b4c6ffe7f3ecb3.tar.gz
merging from 5.1 to rep+2 starting at gca(5.1, next-mr) == build@mysql.com-20091104182209-iui387z35159aoyw
Diffstat (limited to 'mysys')
-rw-r--r--mysys/my_getopt.c4
-rw-r--r--mysys/typelib.c5
2 files changed, 7 insertions, 2 deletions
diff --git a/mysys/my_getopt.c b/mysys/my_getopt.c
index 22b1216f99c..f444e0f0c94 100644
--- a/mysys/my_getopt.c
+++ b/mysys/my_getopt.c
@@ -1041,9 +1041,11 @@ static void init_one_value(const struct my_option *option, uchar* *variable,
*((longlong*) variable)= (longlong) getopt_ll_limit_value((longlong) value, option, NULL);
break;
case GET_ULL:
- case GET_SET:
*((ulonglong*) variable)= (ulonglong) getopt_ull_limit_value((ulonglong) value, option, NULL);
break;
+ case GET_SET:
+ *((ulonglong*) variable)= (ulonglong) value;
+ break;
case GET_DOUBLE:
*((double*) variable)= (double) value;
break;
diff --git a/mysys/typelib.c b/mysys/typelib.c
index 92ffe9316ff..a0fe8a96a89 100644
--- a/mysys/typelib.c
+++ b/mysys/typelib.c
@@ -182,7 +182,10 @@ my_ulonglong find_typeset(char *x, TYPELIB *lib, int *err)
{
(*err)++;
i= x;
- while (*x && *x != field_separator) x++;
+ while (*x && *x != field_separator)
+ x++;
+ if (x[0] && x[1]) // skip separator if found
+ x++;
if ((find= find_type(i, lib, 2 | 8) - 1) < 0)
DBUG_RETURN(0);
result|= (ULL(1) << find);