MySQL Lists are EOL. Please join:

List:Commits« Previous MessageNext Message »
From:Kristofer Pettersson Date:June 25 2009 1:59pm
Subject:bzr commit into mysql-5.1-bugteam branch (kristofer.pettersson:2978)
View as plain text  
#At file:///Users/thek/Development/mysql-5.1-bugteam/ based on revid:sergey.glukhov@stripped

 2978 Kristofer Pettersson	2009-06-25 [merge]
      Automerge

    modified:
      mysys/my_getopt.c
=== modified file 'mysys/my_getopt.c'
--- a/mysys/my_getopt.c	2009-05-14 12:03:33 +0000
+++ b/mysys/my_getopt.c	2009-06-25 13:55:26 +0000
@@ -20,6 +20,7 @@
 #include <mysys_err.h>
 #include <my_getopt.h>
 #include <errno.h>
+#include <m_string.h>
 
 typedef void (*init_func_p)(const struct my_option *option, uchar* *variable,
                             longlong value);
@@ -649,8 +650,18 @@ static int setval(const struct my_option
 	return EXIT_OUT_OF_MEMORY;
       break;
     case GET_ENUM:
-      if (((*(int*)result_pos)= find_type(argument, opts->typelib, 2) - 1) < 0)
-        return EXIT_ARGUMENT_INVALID;
+      if (((*(int*)result_pos)=
+             find_type(argument, opts->typelib, 2) - 1) < 0)
+      {
+        /*
+          Accept an integer representation of the enumerated item.
+        */
+        char *endptr;
+        unsigned int arg= (unsigned int) strtol(argument, &endptr, 10);
+        if (*endptr || arg >= opts->typelib->count)
+          return EXIT_ARGUMENT_INVALID;
+        *(int*)result_pos= arg;
+      }
       break;
     case GET_SET:
       *((ulonglong*)result_pos)= find_typeset(argument, opts->typelib, &err);


Attachment: [text/bzr-bundle] bzr/kristofer.pettersson@sun.com-20090625135859-n4n7pzre2inn15mn.bundle
Thread
bzr commit into mysql-5.1-bugteam branch (kristofer.pettersson:2978) Kristofer Pettersson25 Jun