List:Internals« Previous MessageNext Message »
From:Alex Ivanov Date:October 3 2005 10:29am
Subject:bk commit into 4.1 tree (aivanov:1.2457) BUG#12440
View as plain text  
Below is the list of changes that have just been committed into a local
4.1 repository of alexi. When alexi does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html

ChangeSet
  1.2457 05/10/03 14:29:07 aivanov@stripped +1 -0
  Fixed BUG#12440. Post review commit.

  sql-common/my_time.c
    1.16 05/10/03 14:27:54 aivanov@stripped +5 -4
    Fixed bug #12440: Incorrect processing of time values containing
     long fraction part and/or exponent part.
     Additionally modified str_to_time(): check for exponent part
     is made more precise (after review by serg).

# This is a BitKeeper patch.  What follows are the unified diffs for the
# set of deltas contained in the patch.  The rest of the patch, the part
# that BitKeeper cares about, is below these diffs.
# User:	aivanov
# Host:	mysql.creware.com
# Root:	/home/alexi/dev/mysql-4.1-12440

--- 1.15/sql-common/my_time.c	2005-09-26 22:18:59 +04:00
+++ 1.16/sql-common/my_time.c	2005-10-03 14:27:54 +04:00
@@ -528,11 +528,12 @@
   else
     date[4]=0;
     
-  /* Check for exponent part */
-  /* (may occur as result of %g formatting */
+  /* Check for exponent part: E<digit> | E<sign><digit> */
+  /* (may occur as result of %g formatting) */
   if ((end - str) > 1 && (*str == 'E' || *str == 'e') &&
-      (str[1] == '+' || str[1] == '-' ||
-       my_isdigit(&my_charset_latin1, str[1])))
+      (my_isdigit(&my_charset_latin1, str[1]) ||
+       ((str[1] == '+' || str[1] == '-') &&
+        (end - str) > 2 && my_isdigit(&my_charset_latin1, str[2]))))
   {
     *was_cut= 1;
     return 1;
Thread
bk commit into 4.1 tree (aivanov:1.2457) BUG#12440Alex Ivanov3 Oct