From f3f84d9b04df35305f9dd5ed1581d15e565e9eb2 Mon Sep 17 00:00:00 2001
From: Maxime Jacquemin <maxime.jacquemin@cea.fr>
Date: Thu, 24 Mar 2022 14:31:29 +0100
Subject: [PATCH] [ivette] Fixing a little performance issue

---
 ivette/src/frama-c/plugins/eva/valuetable.tsx | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/ivette/src/frama-c/plugins/eva/valuetable.tsx b/ivette/src/frama-c/plugins/eva/valuetable.tsx
index 92e5b98569c..d77434a448e 100644
--- a/ivette/src/frama-c/plugins/eva/valuetable.tsx
+++ b/ivette/src/frama-c/plugins/eva/valuetable.tsx
@@ -144,7 +144,9 @@ const LocToString = (loc: Location): string => `${loc.fct}:${loc.target}`;
 type LocStack = [ Location, callstack ]
 
 function useEvaluationCache(): Request<LocStack, Evaluation> {
-  const toString = ([ l, c ] : LocStack): string => `${LocToString(l)}:${c}`;
+  const toString = React.useCallback(([ l, c ] : LocStack): string => {
+    return `${LocToString(l)}:${c}`;
+  }, []);
   const get: Request<LocStack, Evaluation> = React.useCallback(([ l, c ]) => {
     const callstack = c === 'Summary' ? undefined : c as Values.callstack;
     return Server.send(Values.getValues, { ...l, callstack });
-- 
GitLab