From d0568dce79c350a4c11609c66587bc3e4cc00eba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Helleu?= Date: Mon, 5 May 2025 20:25:41 +0200 Subject: [PATCH] core: fix integer overflow with decimal numbers in calculation of expression --- CHANGELOG.md | 6 ++++++ src/core/core-calc.c | 4 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4bd350301..0dc1ae74e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # WeeChat ChangeLog +## Version 4.6.3 (under dev) + +### Fixed + +- core: fix integer overflow with decimal numbers in calculation of expression + ## Version 4.6.2 (2025-04-18) ### Fixed diff --git a/src/core/core-calc.c b/src/core/core-calc.c index 73659ea46..adc424ffd 100644 --- a/src/core/core-calc.c +++ b/src/core/core-calc.c @@ -336,9 +336,9 @@ calc_expression (const char *expr) struct t_arraylist *list_values, *list_ops; const char *ptr_expr, *ptr_expr2; char str_result[64], *ptr_operator, *operator; - int index_op, decimals; + int index_op; enum t_calc_symbol last_symbol; - double value, factor, *ptr_value; + double value, factor, decimals, *ptr_value; list_values = NULL; list_ops = NULL;