--- mysys/my_getopt.c 2012-08-29 01:50:46.000000000 -0700 +++ mysys/my_getopt.c 2013-03-17 15:42:54.298246608 -0700 @@ -857,6 +864,7 @@ static longlong eval_num_suffix(char *argument, int *error, char *option_name) { char *endchar; + char *lastchar; longlong num; *error= 0; @@ -869,6 +877,19 @@ *error= 1; return 0; } + + lastchar = endchar; + lastchar++; + if(*endchar == 'k' || *endchar == 'K' || *endchar == 'm' || *endchar == 'M' || *endchar == 'g' || *endchar == 'G') { + if(*lastchar != 0) { + fprintf(stderr, + "Unknown characters '%s' used for variable '%s' (value '%s')\n", + lastchar, option_name, argument); + *error=1; + return 0; + } + } + if (*endchar == 'k' || *endchar == 'K') num*= 1024L; else if (*endchar == 'm' || *endchar == 'M')