Kaydet (Commit) d69b30a8 authored tarafından Caolán McNamara's avatar Caolán McNamara

coverity#1019376 Resource leak

Change-Id: Ifa9c5a7b3aa0d219e09fa3081e66d870a508a84d
üst 0978c495
......@@ -51,6 +51,8 @@
#include <cppuhelper/implbase2.hxx>
#include <cppuhelper/weakref.hxx>
#include <osl/module.hxx>
// In Python 3, the PyString_* functions have been replaced by PyBytes_*
// and PyUnicode_* functions.
#if PY_MAJOR_VERSION >= 3
......@@ -276,6 +278,7 @@ struct RuntimeCargo
com::sun::star::uno::Reference< com::sun::star::script::XInvocationAdapterFactory2 > xAdapterFactory;
com::sun::star::uno::Reference< com::sun::star::beans::XIntrospection > xIntrospection;
PyRef dictUnoModule;
osl::Module testModule;
bool valid;
ExceptionClassMap exceptionMap;
ClassSet interfaceSet;
......
......@@ -346,11 +346,13 @@ static PyObject* initPoniesMode(
.replaceAll(OString('/'), OString('\\'))
#endif
;
oslModule const mod( osl_loadModuleAscii(libname.getStr(),
SAL_LOADMODULE_LAZY | SAL_LOADMODULE_GLOBAL) );
if (!mod) { abort(); }
osl::Module &mod = runtime.getImpl()->cargo->testModule;
mod.load(OStringToOUString(libname, osl_getThreadTextEncoding()),
SAL_LOADMODULE_LAZY | SAL_LOADMODULE_GLOBAL);
if (!mod.is()) { abort(); }
oslGenericFunction const pFunc(
osl_getAsciiFunctionSymbol(mod, "test_init"));
mod.getFunctionSymbol("test_init"));
if (!pFunc) { abort(); }
// guess casting pFunc is undefined behavior but don't see a better way
((void (SAL_CALL *)(XMultiServiceFactory*)) pFunc) (xMSF.get());
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment