summaryrefslogtreecommitdiff
path: root/decode.c
diff options
context:
space:
mode:
authorSvetlana Derevyanko2024-11-07 18:47:23 +0000
committerChristoph Berg2025-04-15 13:05:15 +0000
commite036598542c6c4dee1c0e28cb4ca28cf4dc18520 (patch)
tree0a5fe14f511fd3ae11b9fd368fecf5670f222637 /decode.c
parent06918e9c46022cfe056cc584d734cec9371693a8 (diff)
Fixed bug with number of digits for numeric being calculated wrong, which led to outputting junk data.
Close #32.
Diffstat (limited to 'decode.c')
-rw-r--r--decode.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/decode.c b/decode.c
index 37f723f..9755ec3 100644
--- a/decode.c
+++ b/decode.c
@@ -430,7 +430,7 @@ CopyAppendNumeric(const char *buffer, int num_size)
}
else
{
- ndigits = num_size / sizeof(NumericDigit);
+ ndigits = (num_size - NUMERIC_HEADER_SIZE(num)) / sizeof(NumericDigit);
digits = (NumericDigit *) ((char *) num + NUMERIC_HEADER_SIZE(num));
i = (weight + 1) * DEC_DIGITS;
if (i <= 0)