On Dienstag, 6. Oktober 2009, Andrei Pelinescu-Onciul wrote:
> I
remember that Miklos changes in the last week something in the cfg
> framework, perhaps its related to this?
Should be fixed now (at least the config changes are still seen on exit
by all the processes and mi_fifo does not crash).
It's my patch so I'm responsible :-)
It is related to it. The 0 pointer crash is intentional and it
should signal that someone uses cfg_update() on a process not registered
for config framework use.
Unfortunately my patch added a cfg_update() on process exit (to make
sure they have the latest update values of the debug, memlog and
memdebug) and I failed to account for kamailio modules that fork
processes.
So I'll either disable the 0-crash (which has the disadvantage that in
the future one might try to use the cfg. framework without proper
intialization and it would seem to work at least for some of the vars =>
difficult debugging), remove the cfg_update() on exit (no memlog, debug
update in some cases) or come up with something else.
Another alternative would be to update all the k modules, but I want to
avoid it since they don't use the cfg framework yet and it would
introduce a lot of extra testing before a release.
In the end, I just added a special update call, that is used only on
process exit, before dumping memory debugging info.