From 715d857174ceca82b85d6c8c7df520047ba7fb0c Mon Sep 17 00:00:00 2001 From: Paul Eggleton Date: Mon, 17 Aug 2015 12:12:16 +0100 Subject: bitbake: Fix default function parameter assignment to a list With python you should not assign a list as the default value of a function parameter - because a list is mutable, the result will be that the first time a value is passed it will actually modify the default. Reference: http://docs.python-guide.org/en/latest/writing/gotchas/#mutable-default-arguments (Bitbake rev: 7859f7388f2e3f675d0e1527cfde18625f36f637) Signed-off-by: Paul Eggleton Signed-off-by: Richard Purdie --- bitbake/lib/bb/server/process.py | 4 +++- bitbake/lib/bb/server/xmlrpc.py | 7 +++++-- 2 files changed, 8 insertions(+), 3 deletions(-) (limited to 'bitbake/lib/bb/server') diff --git a/bitbake/lib/bb/server/process.py b/bitbake/lib/bb/server/process.py index ef3ee57aa4..3198635e2f 100644 --- a/bitbake/lib/bb/server/process.py +++ b/bitbake/lib/bb/server/process.py @@ -124,8 +124,10 @@ class ProcessServer(Process, BaseImplServer): self.command_channel.close() self.cooker.shutdown(True) - def idle_commands(self, delay, fds = []): + def idle_commands(self, delay, fds=None): nextsleep = delay + if not fds: + fds = [] for function, data in self._idlefuns.items(): try: diff --git a/bitbake/lib/bb/server/xmlrpc.py b/bitbake/lib/bb/server/xmlrpc.py index 75ec8556f4..f1a2067246 100644 --- a/bitbake/lib/bb/server/xmlrpc.py +++ b/bitbake/lib/bb/server/xmlrpc.py @@ -281,12 +281,15 @@ class XMLRPCServer(SimpleXMLRPCServer, BaseImplServer): self.connection_token = token class BitBakeXMLRPCServerConnection(BitBakeBaseServerConnection): - def __init__(self, serverImpl, clientinfo=("localhost", 0), observer_only = False, featureset = []): + def __init__(self, serverImpl, clientinfo=("localhost", 0), observer_only = False, featureset = None): self.connection, self.transport = _create_server(serverImpl.host, serverImpl.port) self.clientinfo = clientinfo self.serverImpl = serverImpl self.observer_only = observer_only - self.featureset = featureset + if featureset: + self.featureset = featureset + else: + self.featureset = [] def connect(self, token = None): if token is None: -- cgit v1.2.3-54-g00ecf