diff --git a/strings/decimal.c b/strings/decimal.c
index 6e607aaa17391588caa954772e44cb403c8e7aee..b88be6116a6c02fed3c889baa15bf1ea1534c3ad 100644
--- a/strings/decimal.c
+++ b/strings/decimal.c
@@ -873,7 +873,7 @@ int decimal_round(decimal *from, decimal *to, int scale, decimal_round_mode mode
     error=E_DEC_TRUNCATED;
   }
 
-  if (scale+from->intg <0)
+  if (scale+from->intg <= 0)
   {
     decimal_make_zero(to);
     return E_DEC_OK;