fix: float display issue
This commit is contained in:
parent
eaea66cf48
commit
726594b926
|
@ -241,14 +241,14 @@ typedef struct {
|
||||||
case TSDB_DATA_TYPE_FLOAT: { \
|
case TSDB_DATA_TYPE_FLOAT: { \
|
||||||
int32_t n = snprintf(_output, (int32_t)(_outputBytes), "%f", *(float *)(_input)); \
|
int32_t n = snprintf(_output, (int32_t)(_outputBytes), "%f", *(float *)(_input)); \
|
||||||
if (n >= (_outputBytes)) { \
|
if (n >= (_outputBytes)) { \
|
||||||
snprintf(_output, (int32_t)(_outputBytes), "%*.7f", (int32_t)((_outputBytes) - 1), *(float *)(_input)); \
|
snprintf(_output, (int32_t)(_outputBytes), "%.7e", *(float *)(_input)); \
|
||||||
} \
|
} \
|
||||||
break; \
|
break; \
|
||||||
} \
|
} \
|
||||||
case TSDB_DATA_TYPE_DOUBLE: { \
|
case TSDB_DATA_TYPE_DOUBLE: { \
|
||||||
int32_t n = snprintf(_output, (int32_t)(_outputBytes), "%f", *(double *)(_input)); \
|
int32_t n = snprintf(_output, (int32_t)(_outputBytes), "%f", *(double *)(_input)); \
|
||||||
if (n >= (_outputBytes)) { \
|
if (n >= (_outputBytes)) { \
|
||||||
snprintf(_output, (int32_t)(_outputBytes), "%*.7f", (int32_t)((_outputBytes) - 1), *(double *)(_input)); \
|
snprintf(_output, (int32_t)(_outputBytes), "%.15e", *(double *)(_input)); \
|
||||||
} \
|
} \
|
||||||
break; \
|
break; \
|
||||||
} \
|
} \
|
||||||
|
|
|
@ -2085,7 +2085,8 @@ int32_t castFunction(SScalarParam *pInput, int32_t inputNum, SScalarParam *pOutp
|
||||||
(void)memcpy(varDataVal(output), convBuf, len);
|
(void)memcpy(varDataVal(output), convBuf, len);
|
||||||
varDataSetLen(output, len);
|
varDataSetLen(output, len);
|
||||||
} else {
|
} else {
|
||||||
NUM_TO_STRING(inputType, input, bufSize, buf);
|
int32_t outputSize = TMIN(outputLen - VARSTR_HEADER_SIZE, bufSize);
|
||||||
|
NUM_TO_STRING(inputType, input, outputSize, buf);
|
||||||
int32_t len = (int32_t)strlen(buf);
|
int32_t len = (int32_t)strlen(buf);
|
||||||
len = (outputLen - VARSTR_HEADER_SIZE) > len ? len : (outputLen - VARSTR_HEADER_SIZE);
|
len = (outputLen - VARSTR_HEADER_SIZE) > len ? len : (outputLen - VARSTR_HEADER_SIZE);
|
||||||
(void)memcpy(varDataVal(output), buf, len);
|
(void)memcpy(varDataVal(output), buf, len);
|
||||||
|
|
Loading…
Reference in New Issue