diff options
Diffstat (limited to 'src/object.c')
| -rw-r--r-- | src/object.c | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/src/object.c b/src/object.c index 559abf72e4..e8adc60cc2 100644 --- a/src/object.c +++ b/src/object.c @@ -21,10 +21,6 @@ #include "kservice.h" -#ifdef RT_USING_MODULE -extern struct rt_module* rt_current_module; -#endif - #define _OBJ_CONTAINER_LIST_INIT(c) \ {&(rt_object_container[c].object_list), &(rt_object_container[c].object_list)} struct rt_object_information rt_object_container[RT_Object_Class_Unknown] = @@ -182,8 +178,8 @@ void rt_object_init(struct rt_object* object, enum rt_object_class_type type, co #ifdef RT_USING_MODULE /* get module object information */ - information = (rt_current_module != RT_NULL) ? - &rt_current_module->module_object[type] : &rt_object_container[type]; + information = (rt_module_self() != RT_NULL) ? + &rt_module_self()->module_object[type] : &rt_object_container[type]; #else /* get object information */ information = &rt_object_container[type]; @@ -261,11 +257,11 @@ rt_object_t rt_object_allocate(enum rt_object_class_type type, const char* name) #ifdef RT_USING_MODULE /* get module object information */ - information = (rt_current_module != RT_NULL) ? - &rt_current_module->module_object[type] : &rt_object_container[type]; + information = (rt_module_self() != RT_NULL) ? + &rt_module_self()->module_object[type] : &rt_module_self()[type]; #else /* get object information */ - information = &rt_object_container[type]; + information = &rt_module_self()[type]; #endif object = (struct rt_object*)rt_malloc(information->object_size); |
