From aac68131f8ab9aa6dc1f1392a4f9a131a1c54d36 Mon Sep 17 00:00:00 2001 From: Bert Vermeulen Date: Mon, 18 Nov 2013 10:44:28 +0100 Subject: [PATCH] Don't try to load an already-loaded module Python silently uses the existing module anyway, but the library was counting it as an extra module. This was exposed by a test case in the test suite. --- decoder.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/decoder.c b/decoder.c index f6032f5..e3ffb01 100644 --- a/decoder.c +++ b/decoder.c @@ -260,6 +260,11 @@ SRD_API int srd_decoder_load(const char *module_name) if (!module_name) return SRD_ERR_ARG; + if (PyDict_GetItemString(PyImport_GetModuleDict(), module_name)) { + /* Module was already imported. */ + return SRD_OK; + } + srd_dbg("Loading protocol decoder '%s'.", module_name); py_basedec = py_method = py_attr = NULL; -- 2.30.2