summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2003-02-03 04:04:08 +0000
committerDana Jansens <danakj@orodu.net>2003-02-03 04:04:08 +0000
commit478f240c7f6fa439322e8f0bf25a20ad343cd8f9 (patch)
treecbe40a600dd355de60d98ce4fdcabe0c6a356859
parentba87284397e058fc477a04fba2ff2eb815a33de0 (diff)
fix the HOOOGE mem leak! YAY MANMOWER!
-rw-r--r--src/openbox.i27
1 files changed, 12 insertions, 15 deletions
diff --git a/src/openbox.i b/src/openbox.i
index b3d1a9ed..54198325 100644
--- a/src/openbox.i
+++ b/src/openbox.i
@@ -30,12 +30,11 @@
namespace ob {
void python_callback(PyObject *func, MouseData *data)
{
- PyObject *arglist;
- PyObject *result;
+ PyObject *arglist, *result, *pdata;
- arglist = Py_BuildValue("(O)", SWIG_NewPointerObj((void *) data,
- SWIGTYPE_p_ob__MouseData,
- 0));
+ pdata = SWIG_NewPointerObj((void *) data, SWIGTYPE_p_ob__MouseData, 0);
+ arglist = Py_BuildValue("(O)", pdata);
+ Py_DECREF(pdata);
// call the callback
result = PyEval_CallObject(func, arglist);
@@ -50,12 +49,11 @@ void python_callback(PyObject *func, MouseData *data)
void python_callback(PyObject *func, EventData *data)
{
- PyObject *arglist;
- PyObject *result;
+ PyObject *arglist, *result, *pdata;
- arglist = Py_BuildValue("(O)", SWIG_NewPointerObj((void *) data,
- SWIGTYPE_p_ob__EventData,
- 0));
+ pdata = SWIG_NewPointerObj((void *) data, SWIGTYPE_p_ob__EventData, 0);
+ arglist = Py_BuildValue("(O)", pdata);
+ Py_DECREF(pdata);
// call the callback
result = PyEval_CallObject(func, arglist);
@@ -70,12 +68,11 @@ void python_callback(PyObject *func, EventData *data)
void python_callback(PyObject *func, KeyData *data)
{
- PyObject *arglist;
- PyObject *result;
+ PyObject *arglist, *result, *pdata;
- arglist = Py_BuildValue("(O)", SWIG_NewPointerObj((void *) data,
- SWIGTYPE_p_ob__KeyData,
- 0));
+ pdata = SWIG_NewPointerObj((void *) data, SWIGTYPE_p_ob__KeyData, 0);
+ arglist = Py_BuildValue("(O)", pdata);
+ Py_DECREF(pdata);
// call the callback
result = PyEval_CallObject(func, arglist);