load python mule from callable, eg. --mule=package.module:callable

This commit is contained in:
C Anthony Risinger
2015-07-15 17:04:25 -05:00
parent 03b86d8414
commit 0187247899
+14
View File
@@ -1821,6 +1821,20 @@ int uwsgi_python_mule(char *opt) {
UWSGI_RELEASE_GIL;
return 1;
}
else if (strchr(opt, ':')) {
UWSGI_GET_GIL;
PyObject *result = NULL;
PyObject *arglist = Py_BuildValue("()");
PyObject *callable = up.loaders[LOADER_MOUNT](opt);
if (callable) {
result = PyEval_CallObject(callable, arglist);
}
Py_XDECREF(result);
Py_XDECREF(arglist);
Py_XDECREF(callable);
UWSGI_RELEASE_GIL;
return 1;
}
return 0;