mirror of https://github.com/scrapy/scrapy.git
Fixed bug that was causing the engine to notify the manager of spider closes too early
This commit is contained in:
parent
fcdc4ee7d9
commit
9523cab25c
|
|
@ -281,7 +281,7 @@ class ExecutionEngine(object):
|
|||
dfd.addErrback(log.err, "Unhandled error on SpiderManager.close_spider()",
|
||||
spider=spider)
|
||||
dfd.addBoth(lambda _: log.msg("Spider closed (%s)" % reason, spider=spider))
|
||||
reactor.callLater(0, self._spider_closed_callback)
|
||||
dfd.addBoth(lambda _: self._spider_closed_callback(spider))
|
||||
return dfd
|
||||
|
||||
def _finish_stopping_engine(self):
|
||||
|
|
|
|||
|
|
@ -52,7 +52,7 @@ class ExecutionManager(object):
|
|||
self.engine.crawl(request, spider)
|
||||
|
||||
@defer.inlineCallbacks
|
||||
def _spider_closed(self):
|
||||
def _spider_closed(self, spider=None):
|
||||
if not self.engine.open_spiders:
|
||||
is_finished = yield defer.maybeDeferred(self.queue.is_finished)
|
||||
if is_finished:
|
||||
|
|
|
|||
Loading…
Reference in New Issue