mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
Bug#11589 mysqltest, --ps-protocol, strange output, float/double/real with zerofill
- Add zerofill in client if real/float/double is bound to string and fetched using binary protocol. libmysql/libmysql.c: Add zerofill before value if column is created with zerofill mysql-test/r/type_float.result: Update test for zerofill mysql-test/t/type_float.test: Add test for zerofill and prepared statments
This commit is contained in:
@ -3850,7 +3850,15 @@ static void fetch_float_with_conversion(MYSQL_BIND *param, MYSQL_FIELD *field,
|
||||
sprintf(buff, "%.*f", (int) field->decimals, value);
|
||||
end= strend(buff);
|
||||
}
|
||||
fetch_string_with_conversion(param, buff, (uint) (end - buff));
|
||||
uint length= (uint) (end-buff);
|
||||
if (field->flags & ZEROFILL_FLAG && length < field->length &&
|
||||
field->length < MAX_DOUBLE_STRING_REP_LENGTH-1)
|
||||
{
|
||||
bmove_upp((char*) buff+field->length,buff+length, length);
|
||||
bfill((char*) buff, field->length - length,'0');
|
||||
length= field->length;
|
||||
}
|
||||
fetch_string_with_conversion(param, buff, length);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user