From 7899ad89f1a5638f9c45f20f1214584a0b4200c2 Mon Sep 17 00:00:00 2001
From: Pascal Nowack
Date: Sun, 31 Mar 2019 14:11:16 +0200
Subject: [PATCH] search-provider: stop normalizing the equation twice
When an equation is given by the g-s overview, g-c
will solve this equation, where it will be first
normalized and then solved.
This is done by running a subprocess, where g-c
will call g-c in this subprocess with the
"--solve" argument.
With this "--solve" argument, the equation will
also be normalized.
However, when an equation is given by the g-s
overview, it will also be normalized in a check,
that happens before the solve process, to not to
process single numbers given by the g-s overview.
This normalized equation will then be used to
invoke the subprocess to solve the equation,
leading into normalizing the already normalized
equation and therefore resulting into wrong
results when the equation itself contains
decimal numbers.
Solve this issue, by invoking the subprocess with
the unnormalized equation, instead of the
normalized one, to not to normalize the
equation twice.
Closes: https://gitlab.gnome.org/GNOME/gnome-calculator/issues/104
---
search-provider/search-provider.vala | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/search-provider/search-provider.vala b/search-provider/search-provider.vala
index 6c786326..7aa5f44f 100644
--- a/search-provider/search-provider.vala
+++ b/search-provider/search-provider.vala
@@ -108,7 +108,7 @@ public class SearchProvider : Object
try
{
- var subprocess = yield solve_subprocess (normalized_equation);
+ var subprocess = yield solve_subprocess (equation);
yield subprocess.communicate_utf8_async (null, cancellable, out result, null);
subprocess.wait_check (cancellable);
}
--
2.21.0