From: GitHub <no...@gi...> - 2013-03-16 16:42:42
|
Branch: refs/heads/master Home: https://github.com/znc/znc Commit: 9f4f2817d17deacbe7d8e99d31471e8e4e0f868a https://github.com/znc/znc/commit/9f4f2817d17deacbe7d8e99d31471e8e4e0f868a Author: Alexey Sokolov <ale...@as...> Date: 2013-03-16 (Sat, 16 Mar 2013) Changed paths: M include/znc/FileUtils.h M modules/modperl.cpp M modules/modperl/startup.pl Log Message: ----------- Fix #293 In GetAvailableMods() modules paths were returned like "moddir//module.pm", but when they are loaded, they use path "moddir/module.pm". Because of that our hack of cleaning %INC when the module is unloaded, which enables UpdateMod, removed wrong record from %INC, left right record in it, and erased the module's namespace. When the module was loaded again, the namespace was not restored, because "require" didn't load the module, because it was still in %INC. So, when we call a function of that module, the function does not exist anymore. |