summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKevin P. Fleming <kpfleming@digium.com>2007-02-22 17:36:46 +0000
committerKevin P. Fleming <kpfleming@digium.com>2007-02-22 17:36:46 +0000
commitad7d044c750cc799523ba0660666e24d64ec28c1 (patch)
treeca7fcd93a52a8ca4f6f4ed548a4c90d4547cdf96
parent2b4232f02774f1b7ef9e21669c20f4c23bbf1d7d (diff)
move the ast_module_info structure into the special section as well, otherwise when restore_globals() is called it will lose its pointer to the ast_module structure that the loader put there
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@56209 65c4cc65-6c06-0410-ace0-fbb531ad65f3
-rw-r--r--include/asterisk/module.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/include/asterisk/module.h b/include/asterisk/module.h
index 4ced03fa9..0fe4ccf57 100644
--- a/include/asterisk/module.h
+++ b/include/asterisk/module.h
@@ -300,7 +300,9 @@ static void __restore_globals(void)
}
#define AST_MODULE_INFO(keystr, flags_to_set, desc, fields...) \
- static struct ast_module_info __mod_info = { \
+ static struct ast_module_info \
+ __attribute__((section(".embed_module"))) \
+ __mod_info = { \
.backup_globals = __backup_globals, \
.restore_globals = __restore_globals, \
.name = AST_MODULE, \