From c88af976ff4ff0564db5d7c221e2888df4dfe0a9 Mon Sep 17 00:00:00 2001 From: Sadie Powell Date: Thu, 24 Dec 2020 22:36:43 +0000 Subject: Add a function for shrinking module names. --- src/modules.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/modules.cpp') diff --git a/src/modules.cpp b/src/modules.cpp index 152ac2109..0ed1660b6 100644 --- a/src/modules.cpp +++ b/src/modules.cpp @@ -652,6 +652,14 @@ std::string ModuleManager::ExpandModName(const std::string& modname) return fullname; } +std::string ModuleManager::ShrinkModName(const std::string& modname) +{ + const static size_t extlen = strlen(DLL_EXTENSION); + size_t startpos = modname.compare(0, 2, "m_", 2) ? 0 : 2; + size_t endpos = modname.length() < extlen || modname.compare(modname.length() - extlen, extlen, ".so", extlen) ? 0 : extlen; + return modname.substr(startpos, modname.length() - endpos - startpos); +} + dynamic_reference_base::dynamic_reference_base(Module* Creator, const std::string& Name) : name(Name) , creator(Creator) -- cgit v1.3.1-10-gc9f91