From c05082a8e43e0a9e3fa1d8e277521f48e10e37ee Mon Sep 17 00:00:00 2001 From: xiaost Date: Wed, 29 Jan 2014 04:39:51 +0800 Subject: [PATCH] fixed python spooler memory leak --- plugins/python/python_plugin.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/plugins/python/python_plugin.c b/plugins/python/python_plugin.c index 0824fdae..560ace43 100644 --- a/plugins/python/python_plugin.c +++ b/plugins/python/python_plugin.c @@ -1634,7 +1634,9 @@ int uwsgi_python_spooler(char *filename, char *buf, uint16_t len, char *body, si Py_DECREF(zero); if (body && body_len > 0) { - PyDict_SetItemString(spool_dict, "body", PyString_FromStringAndSize(body, body_len)); + PyObject *value = PyString_FromStringAndSize(body, body_len); + PyDict_SetItemString(spool_dict, "body", value); + Py_DECREF(value); } PyTuple_SetItem(pyargs, 0, spool_dict);