瀏覽代碼

Make sure app references same object

If app is set and current_app is not, this function will fail due to the reference to app in the trace_task call.
kristaps 10 年之前
父節點
當前提交
ff744595a3
共有 1 個文件被更改,包括 2 次插入1 次删除
  1. 2 1
      celery/app/trace.py

+ 2 - 1
celery/app/trace.py

@@ -337,7 +337,8 @@ def trace_task(task, uuid, args, kwargs, request={}, **opts):
 
 
 def _trace_task_ret(name, uuid, args, kwargs, request={}, app=None, **opts):
-    return trace_task((app or current_app).tasks[name],
+    app = app or current_app
+    return trace_task(app.tasks[name],
                       uuid, args, kwargs, request, app=app, **opts)
 trace_task_ret = _trace_task_ret