diff --git a/oml/item/models.py b/oml/item/models.py index dd37266..163eaf2 100644 --- a/oml/item/models.py +++ b/oml/item/models.py @@ -584,8 +584,9 @@ class Item(db.Model): else: self.added = None self.update() - if self.id in state.downloads.transfers: - del state.downloads.transfers[self.id] + if state.downloads: + if self.id in state.downloads.transfers: + del state.downloads.transfers[self.id] Changelog.record(user, 'removeitem', self.id) class Sort(db.Model): diff --git a/oml/server.py b/oml/server.py index 3d083ea..51d909c 100644 --- a/oml/server.py +++ b/oml/server.py @@ -17,6 +17,7 @@ from item.icons import IconHandler import db import node.server import oxtornado +import downloads import settings import setup import state @@ -148,14 +149,12 @@ def run(): state.cache = Cache(ttl=60) def start_node(): - import downloads import nodes import tor import bandwidth state.bandwidth = bandwidth.Bandwidth() state.tor = tor.Tor() state.node = node.server.start() - state.downloads = downloads.Downloads() state.nodes = nodes.Nodes() def publish(): if not state.tor.is_online(): @@ -166,6 +165,7 @@ def run(): state.main.call_later(10, lambda: state.tasks.queue('scanimport')) if not state.update: + state.downloads = downloads.Downloads() state.tasks = tasks.Tasks() state.main.add_callback(start_node) else: