From b2fb4be8111ae46ca64e4b135cfd47895900a0e1 Mon Sep 17 00:00:00 2001 From: qiuyiuestc Date: Wed, 17 Nov 2010 15:41:10 +0000 Subject: add initial libdl git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1052 bbd45198-f89e-11dd-88c7-29a3b14d5316 --- components/libdl/dlclose.c | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 components/libdl/dlclose.c (limited to 'components/libdl/dlclose.c') diff --git a/components/libdl/dlclose.c b/components/libdl/dlclose.c new file mode 100644 index 0000000000..e040a21396 --- /dev/null +++ b/components/libdl/dlclose.c @@ -0,0 +1,36 @@ +/* + * File : dlclose.c + * This file is part of RT-Thread RTOS + * COPYRIGHT (C) 2006 - 2010, RT-Thread Development Team + * + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rt-thread.org/license/LICENSE + * + * Change Logs: + * Date Author Notes + * 2010-11-17 yi.qiu first version + */ + +#include +#include + +int rt_dlclose (void *handle) +{ + rt_module_t module; + + RT_ASSERT(handle != RT_NULL); + + module = (rt_module_t)handle; + module->nref--; + + if(module->nref <= 0) + { + rt_module_unload(module); + } + + return RT_TRUE; +} + +RTM_EXPORT(rt_dlclose) + -- cgit v1.3.1