Module: kamailio
Branch: master
Commit: 3afb9659ab8b25ff8cfbe4fc706396b83db51021
URL: 
https://github.com/kamailio/kamailio/commit/3afb9659ab8b25ff8cfbe4fc706396b83db51021

Author: Daniel-Constantin Mierla <[email protected]>
Committer: Daniel-Constantin Mierla <[email protected]>
Date: 2018-08-14T11:05:17+02:00

app_python: ensure cfg framework is initialized for child init callback

- reported by GH #1618

---

Modified: src/modules/app_python/app_python_mod.c

---

Diff:  
https://github.com/kamailio/kamailio/commit/3afb9659ab8b25ff8cfbe4fc706396b83db51021.diff
Patch: 
https://github.com/kamailio/kamailio/commit/3afb9659ab8b25ff8cfbe4fc706396b83db51021.patch

---

diff --git a/src/modules/app_python/app_python_mod.c 
b/src/modules/app_python/app_python_mod.c
index 5c5278f42d..8ed21e1c93 100644
--- a/src/modules/app_python/app_python_mod.c
+++ b/src/modules/app_python/app_python_mod.c
@@ -26,6 +26,7 @@
 #include "../../core/sr_module.h"
 #include "../../core/mod_fix.h"
 #include "../../core/kemi.h"
+#include "../../core/cfg/cfg_struct.h"
 
 #include "python_exec.h"
 #include "python_iface.h"
@@ -278,7 +279,7 @@ int apy_mod_init(PyObject *pModule)
        Py_XDECREF(_sr_apy_handler_obj);
        _sr_apy_handler_obj = pHandler;
        rval = 0;
- err:
+err:
        return rval;
 }
 
@@ -291,7 +292,7 @@ int apy_reload_script(void)
        PY_GIL_ENSURE;
        pModule = PyImport_ReloadModule(_sr_apy_module);
        if (!pModule) {
-                // PyErr_PrintEx(0); - don't hide the real exception
+               // PyErr_PrintEx(0); - don't hide the real exception
                if (!PyErr_Occurred())
                        PyErr_Format(PyExc_ImportError, "Reload module '%s'", 
bname);
                python_handle_exception("mod_init");
@@ -306,15 +307,15 @@ int apy_reload_script(void)
        Py_DECREF(_sr_apy_module);
        _sr_apy_module = pModule;
 
-        if(apy_init_script(_apy_process_rank)<0) {
-                LM_ERR("failed to init script\n");
+       if(apy_init_script(_apy_process_rank)<0) {
+               LM_ERR("failed to init script\n");
                goto err;
-        }
+       }
 
        rval = 0;
- err:
+err:
        PY_GIL_RELEASE;
-        return rval;
+       return rval;
 }
 
 int apy_load_script(void)
@@ -390,7 +391,7 @@ int apy_load_script(void)
        _sr_apy_module = pModule;
 
        rval = apy_mod_init(pModule);
- err:
+err:
        PY_GIL_RELEASE;
        return rval;
 }
@@ -435,6 +436,10 @@ int apy_init_script(int rank)
                goto err;
        }
 
+       if (cfg_child_init()) {
+               goto err;
+       }
+
        pArgs = PyTuple_New(1);
        if (pArgs == NULL) {
                python_handle_exception("child_init");
@@ -485,7 +490,7 @@ int apy_init_script(int rank)
        rval = PyInt_AsLong(pResult);
        Py_DECREF(pResult);
 
- err:
+err:
        PY_GIL_RELEASE;
        return rval;
 }


_______________________________________________
Kamailio (SER) - Development Mailing List
[email protected]
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-dev

Reply via email to