<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rt-thread.git/components/libc/posix/libdl/dlopen.c, branch copilot/fix-dlopen-name-mismatch</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<id>http://cgit.235523.xyz/rt-thread.git/atom/components/libc/posix/libdl/dlopen.c?h=copilot%2Ffix-dlopen-name-mismatch</id>
<link rel='self' href='http://cgit.235523.xyz/rt-thread.git/atom/components/libc/posix/libdl/dlopen.c?h=copilot%2Ffix-dlopen-name-mismatch'/>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/'/>
<updated>2026-03-19T02:36:09Z</updated>
<entry>
<title>[libc][libdl] Extract name extraction to shared function and fix edge cases</title>
<updated>2026-03-19T02:36:09Z</updated>
<author>
<name>copilot-swe-agent[bot]</name>
<email>198982749+Copilot@users.noreply.github.com</email>
</author>
<published>2026-03-19T02:36:09Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=79d62050aaf21ab8b4de3dcb410ecb0e58235b64'/>
<id>urn:sha1:79d62050aaf21ab8b4de3dcb410ecb0e58235b64</id>
<content type='text'>
Address code review feedback:
1. Extract path stripping logic into shared dlmodule_extract_name() function
   to avoid code duplication between dlopen() and _dlmodule_set_name().
2. Fix edge case handling for filenames starting with dot (e.g., .hidden).
3. Add proper documentation for the new function.

This ensures consistent module name extraction across all code paths.

Co-authored-by: BernardXiong &lt;1241087+BernardXiong@users.noreply.github.com&gt;
</content>
</entry>
<entry>
<title>[libc][libdl] Fix dlopen() failing to find already-loaded modules</title>
<updated>2026-03-19T02:34:34Z</updated>
<author>
<name>copilot-swe-agent[bot]</name>
<email>198982749+Copilot@users.noreply.github.com</email>
</author>
<published>2026-03-19T02:34:34Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=8a99de17472a472ee46bbb7c795d09a2937e9177'/>
<id>urn:sha1:8a99de17472a472ee46bbb7c795d09a2937e9177</id>
<content type='text'>
Fix name mismatch between dlmodule_find() and _dlmodule_set_name() that
caused dlopen() to always reload modules instead of reusing them:

1. In dlopen(): Extract module name from full path before calling
   dlmodule_find(), matching the stripped name stored by _dlmodule_set_name().
   This allows dlopen() to properly find and reuse already-loaded modules.

2. In _dlmodule_set_name(): Fix bug where extension detection searched
   the entire path instead of just the filename portion. For paths like
   "/mnt/v1.2/app.so", it would incorrectly find "." in "v1.2" directory
   name instead of the ".so" extension.

Fixes: Module reloading on every dlopen() call, memory leaks from
duplicate module instances, and dlclose() cleanup issues.

Co-authored-by: BernardXiong &lt;1241087+BernardXiong@users.noreply.github.com&gt;
</content>
</entry>
<entry>
<title>[libc] add comments for libdl APIs.</title>
<updated>2024-11-12T23:58:34Z</updated>
<author>
<name>ligr</name>
<email>liguorui1213@163.com</email>
</author>
<published>2024-11-12T07:38:28Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=f0934630c46a3111cf06ab2777e368fc04050292'/>
<id>urn:sha1:f0934630c46a3111cf06ab2777e368fc04050292</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[libdl] move libdl to posix folder (#5523)</title>
<updated>2022-01-20T12:55:31Z</updated>
<author>
<name>Man, Jianting (Meco)</name>
<email>920369182@qq.com</email>
</author>
<published>2022-01-20T12:55:31Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=c89735a357dda9f3249a90346e033b64e5a1a499'/>
<id>urn:sha1:c89735a357dda9f3249a90346e033b64e5a1a499</id>
<content type='text'>
</content>
</entry>
</feed>
