From 0b01df1fcc518231d9c8dce80fc6018877fc3934 Mon Sep 17 00:00:00 2001 From: Griatch Date: Thu, 1 Jan 2015 21:13:36 +0100 Subject: [PATCH] Fixed creation function that caused entities to be wrong-named in certain circumstances. Server now starts and shutsdown without tracebacks. --- src/comms/comms.py | 3 ++- src/objects/objects.py | 5 +++-- src/scripts/scripts.py | 7 ++++--- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/src/comms/comms.py b/src/comms/comms.py index 303d17ac74..22d625bd0e 100644 --- a/src/comms/comms.py +++ b/src/comms/comms.py @@ -31,7 +31,8 @@ class Channel(ChannelDB): # with the utils.create.create_channel function. cdict = self._createdict if not cdict["key"]: - self.db_key = "#i" % self.dbid + if not self.db_key: + self.db_key = "#i" % self.dbid elif cdict["key"] and self.key != cdict["key"]: self.key = cdict["key"] if cdict["keep_log"]: diff --git a/src/objects/objects.py b/src/objects/objects.py index 0744216fdc..5dd39d9dee 100644 --- a/src/objects/objects.py +++ b/src/objects/objects.py @@ -859,8 +859,9 @@ class DefaultObject(ObjectDB): cdict = self._createdict updates = [] if not cdict["key"]: - self.db_key = "#%i" % self.dbid - updates.append("db_key") + if not self.db_key: + self.db_key = "#%i" % self.dbid + updates.append("db_key") elif self.key != cdict["key"]: updates.append("db_key") self.db_key = cdict["key"] diff --git a/src/scripts/scripts.py b/src/scripts/scripts.py index 5beefedb4e..e8c9cd9916 100644 --- a/src/scripts/scripts.py +++ b/src/scripts/scripts.py @@ -444,9 +444,10 @@ class Script(ScriptBase): cdict = self._createdict updates = [] if not cdict["key"]: - self.db_key = "#%i" % self.dbid - updates.append("db_key") - elif self.key != cdict["db_key"]: + if not self.db_key: + self.db_key = "#%i" % self.dbid + updates.append("db_key") + elif self.db_key != cdict["db_key"]: self.db_key = cdict["key"] updates.append("db_key") if cdict["interval"] and self.interval != cdict["interval"]: