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
commit3962da934f6e2a92ba04505bd6a33dd7d8322005 (patch)
treec5510a774ac5e8722c26070e21e3d266d6408381 /mysys
parent13dad4ebd268e4bf26c4d6f478f19896770d9b78 (diff)
parenta95f54c6d81f20b07e41a7e0e2246ee00641df6c (diff)
downloadmariadb-git-3962da934f6e2a92ba04505bd6a33dd7d8322005.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);