From c337333a856de45e4b24776c89cd889d541d60a3 Mon Sep 17 00:00:00 2001
From: inso <insomniak.fr@gmaiL.com>
Date: Thu, 17 Mar 2016 21:16:40 +0100
Subject: [PATCH] Fix access to cache

---
 src/sakia/core/net/api/bma/access.py | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/sakia/core/net/api/bma/access.py b/src/sakia/core/net/api/bma/access.py
index 94828b18..b4b95e25 100644
--- a/src/sakia/core/net/api/bma/access.py
+++ b/src/sakia/core/net/api/bma/access.py
@@ -9,6 +9,7 @@ import random
 from socket import gaierror
 import jsonschema
 from pkg_resources import parse_version
+import copy
 
 
 class BmaAccess(QObject):
@@ -127,7 +128,7 @@ class BmaAccess(QObject):
             elif str(request) in BmaAccess.__saved_requests \
                 or cached_data['metadata']['block_hash'] == self._network.current_blockUID.sha_hash:
                 need_reload = False
-            ret_data = cached_data['value']
+            ret_data = copy.deepcopy(cached_data['value'])
         else:
             need_reload = True
             ret_data = None
@@ -172,7 +173,7 @@ class BmaAccess(QObject):
         self._data[cache_key]['metadata']['block_hash'] = self._network.current_blockUID.sha_hash
         self._data[cache_key]['metadata']['sakia_version'] = __version__
         if not self._compare_json(self._data[cache_key]['value'], data):
-            self._data[cache_key]['value'] = data
+            self._data[cache_key]['value'] = copy.deepcopy(data)
             return True
         return False
 
-- 
GitLab