Sisyphus repositório
Última atualização: 1 outubro 2023 | SRPMs: 18631 | Visitas: 37724644
en ru br
ALT Linux repositórios
S:1.0.2-alt3
5.0: 1.0.2-alt1
4.1: 1.0.2-alt0.M41.1
4.0: 1.0.2-alt0.M40.1
3.0: 0.9.0-alt10

Group :: Jogos/Enigmas
RPM: kiki

 Main   Changelog   Spec   Patches   Sources   Download   Gear   Bugs e FR  Repocop 

Patch: kiki-1.0.2-debian-dont-leak-python-results.patch
Download


Some Python objects were leaked.
Peter De Wachter (pdewacht@gmail.com)
placed in the public domain
Status: in upstream CVS
--- a/src/base/KikiPyAction.cpp
+++ b/src/base/KikiPyAction.cpp
@@ -64,7 +64,12 @@
 {
     if (PyObject_TypeCheck(python_object, &PyInstance_Type))
     {
-        if (PyObject_CallMethod(python_object, const_cast<char*>("finishAction"), const_cast<char*>("s"), action_name.c_str()) == NULL)
+        PyObject * result = PyObject_CallMethod(python_object, const_cast<char*>("finishAction"), const_cast<char*>("s"), action_name.c_str());
+        if (result)
+        {
+            Py_DECREF(result);
+        }
+        else
         {
             KConsole::printError("KikiPyAction::finish failed");
         }
@@ -76,7 +81,12 @@
 { 
     if (PyObject_TypeCheck(python_object, &PyInstance_Type))
     {
-        if (PyObject_CallMethod(python_object, const_cast<char*>("actionFinished"), const_cast<char*>("s"), action_name.c_str()) == NULL)
+        PyObject * result = PyObject_CallMethod(python_object, const_cast<char*>("actionFinished"), const_cast<char*>("s"), action_name.c_str());
+        if (result)
+        {
+            Py_DECREF(result);
+        }
+        else
         {
             KConsole::printError("KikiPyAction::finished failed");
         }
 
projeto & código: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
mantenedor atual: Michael Shigorin
mantenedor da tradução: Fernando Martini aka fmartini © 2009