SectionInfo::~SectionInfo() { sections_list.RemoveFAt(section_num); for(u32 i=section_num + 1; i<sections_list.GetCount(); ++i) { sections_list[i].shdr.sh_offset -= code.GetCount(); sections_list[i].shdr.sh_name -= name.length(); } section_offs -= code.GetCount(); section_name_offs -= name.length(); }
bool UnloadFunc(u32 id) { for(u32 i=0; i<g_modules_funcs_list.GetCount(); ++i) { if(g_modules_funcs_list[i].id == id) { g_modules_funcs_list.RemoveFAt(i); return true; } } return false; }
bool UnloadFunc(u32 id) { std::lock_guard<std::mutex> lock(g_funcs_lock); for(u32 i=0; i<g_modules_funcs_list.GetCount(); ++i) { if(g_modules_funcs_list[i].id == id) { g_modules_funcs_list.RemoveFAt(i); return true; } } return false; }