From 3bd831782cac6a09b5132d6534601497d9f5e456 Mon Sep 17 00:00:00 2001 From: Ruud Date: Mon, 2 Jun 2014 14:02:55 +0200 Subject: [PATCH] Release lock inside thread --- couchpotato/api.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/couchpotato/api.py b/couchpotato/api.py index 7b863559..cd0bb046 100644 --- a/couchpotato/api.py +++ b/couchpotato/api.py @@ -33,10 +33,10 @@ def run_async(func): def run_handler(route, kwargs, callback = None): try: res = api[route](**kwargs) - callback(res) + callback(res, route) except: log.error('Failed doing api request "%s": %s', (route, traceback.format_exc())) - callback({'success': False, 'error': 'Failed returning results'}) + callback({'success': False, 'error': 'Failed returning results'}, route) # NonBlock API handler @@ -115,11 +115,11 @@ class ApiHandler(RequestHandler): self.write({'success': False, 'error': 'Failed returning results'}) self.finish() - api_locks[route].release() + api_locks[route].release() post = get - def taskFinished(self, result): + def taskFinished(self, result, route): if self.request.connection.stream.closed(): return @@ -142,6 +142,8 @@ class ApiHandler(RequestHandler): try: self.finish({'success': False, 'error': 'Failed returning results'}) except: pass + api_locks[route].release() + def addApiView(route, func, static = False, docs = None, **kwargs):