summaryrefslogtreecommitdiff
path: root/mysys/ma_dyncol.c
diff options
context:
space:
mode:
authorSergei Golubchik <serg@mariadb.org>2015-12-21 21:24:22 +0100
committerSergei Golubchik <serg@mariadb.org>2015-12-21 21:24:22 +0100
commita2bcee626d4ef2836e38e4932305871390164644 (patch)
treeb41e357427318bad8985078b91bbd2b0360defc8 /mysys/ma_dyncol.c
parent1788bfe93a745582d938a608d5959b7d2e6b2f23 (diff)
parent4fdf25afa8188905653a83e08fc387243e584600 (diff)
downloadmariadb-git-a2bcee626d4ef2836e38e4932305871390164644.tar.gz
Merge branch '10.0' into 10.1
Diffstat (limited to 'mysys/ma_dyncol.c')
-rw-r--r--mysys/ma_dyncol.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/mysys/ma_dyncol.c b/mysys/ma_dyncol.c
index e6e04efe121..ffe818e12b9 100644
--- a/mysys/ma_dyncol.c
+++ b/mysys/ma_dyncol.c
@@ -3724,7 +3724,8 @@ mariadb_dyncol_check(DYNAMIC_COLUMN *str)
/* It is not first entry */
if (prev_data_offset > data_offset ||
((prev_type != DYN_COL_INT &&
- prev_type != DYN_COL_UINT) && prev_data_offset == data_offset))
+ prev_type != DYN_COL_UINT &&
+ prev_type != DYN_COL_DECIMAL) && prev_data_offset == data_offset))
{
DBUG_PRINT("info", ("Field order: %u Previous data offset: %u"
" >(=) Current data offset: %u",
@@ -3836,14 +3837,12 @@ mariadb_dyncol_val_str(DYNAMIC_STRING *str, DYNAMIC_COLUMN_VALUE *val,
return ER_DYNCOL_RESOURCE;
break;
case DYN_COL_DOUBLE:
- len= my_snprintf(buff, sizeof(buff), "%g", val->x.double_value);
+
+ len= my_gcvt(val->x.double_value, MY_GCVT_ARG_DOUBLE,
+ sizeof(buff) - 1, buff, NULL);
if (dynstr_realloc(str, len + (quote ? 2 : 0)))
return ER_DYNCOL_RESOURCE;
- if (quote)
- str->str[str->length++]= quote;
dynstr_append_mem(str, buff, len);
- if (quote)
- str->str[str->length++]= quote;
break;
case DYN_COL_DYNCOL:
case DYN_COL_STRING: