summaryrefslogtreecommitdiffstats
path: root/bitbake
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2017-07-18 17:50:24 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-07-21 08:41:11 +0100
commit1cfefc8b0f5337c256597c4312517227124dd2e6 (patch)
tree808c8a63d0df44db21306b04f17d1784bc79ad65 /bitbake
parent4602408c69132315c3784718fe4ce155b12464cf (diff)
downloadpoky-1cfefc8b0f5337c256597c4312517227124dd2e6.tar.gz
bitbake: cookerdata/cooker: Restore original datastore upon client disconnect
(Bitbake rev: 67ae612ab890965357d24a9bd35610cf813b79ba) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake')
-rw-r--r--bitbake/lib/bb/cooker.py2
-rw-r--r--bitbake/lib/bb/cookerdata.py9
2 files changed, 11 insertions, 0 deletions
diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py
index e27763ecab..daffe67540 100644
--- a/bitbake/lib/bb/cooker.py
+++ b/bitbake/lib/bb/cooker.py
@@ -1566,6 +1566,8 @@ class BBCooker:
1566 def clientComplete(self): 1566 def clientComplete(self):
1567 """Called when the client is done using the server""" 1567 """Called when the client is done using the server"""
1568 self.finishcommand() 1568 self.finishcommand()
1569 self.databuilder.reset()
1570 self.data = self.databuilder.data
1569 1571
1570def server_main(cooker, func, *args): 1572def server_main(cooker, func, *args):
1571 cooker.pre_serve() 1573 cooker.pre_serve()
diff --git a/bitbake/lib/bb/cookerdata.py b/bitbake/lib/bb/cookerdata.py
index d05abfe745..55c6ea83cb 100644
--- a/bitbake/lib/bb/cookerdata.py
+++ b/bitbake/lib/bb/cookerdata.py
@@ -328,6 +328,15 @@ class CookerDataBuilder(object):
328 logger.exception("Error parsing configuration files") 328 logger.exception("Error parsing configuration files")
329 raise bb.BBHandledException 329 raise bb.BBHandledException
330 330
331 # Create a copy so we can reset at a later date when UIs disconnect
332 self.origdata = self.data
333 self.data = bb.data.createCopy(self.origdata)
334 self.mcdata[''] = self.data
335
336 def reset(self):
337 self.data = bb.data.createCopy(self.origdata)
338 self.mcdata[''] = self.data
339
331 def _findLayerConf(self, data): 340 def _findLayerConf(self, data):
332 return findConfigFile("bblayers.conf", data) 341 return findConfigFile("bblayers.conf", data)
333 342