<feed xmlns='http://www.w3.org/2005/Atom'>
<title>lua/testes/libs/lib22.c, branch v5.5.1</title>
<subtitle>A mirror of https://github.com/lua/lua
</subtitle>
<id>https://git.lua4.win/lua/atom?h=v5.5.1</id>
<link rel='self' href='https://git.lua4.win/lua/atom?h=v5.5.1'/>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lua/'/>
<updated>2025-07-09T17:40:36+00:00</updated>
<entry>
<title>New method to unload DLLs</title>
<updated>2025-07-09T17:40:36+00:00</updated>
<author>
<name>Roberto Ierusalimschy</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2025-07-09T17:40:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lua/commit/?id=85a3c1699c9587a9e952b4ab75b1c6c310ebebea'/>
<id>urn:sha1:85a3c1699c9587a9e952b4ab75b1c6c310ebebea</id>
<content type='text'>
External strings created by DLLs may need the DLL code to be
deallocated. This implies that a DLL can only be unloaded after all
its strings were deallocated, which happen only after the run of all
finalizers. To ensure that order, we create a 'library string' to
represent each DLL and keep it locked. When this string is deallocated
(after the deallocation of any string created by the DLL) it closes its
corresponding DLL.
</content>
</entry>
<entry>
<title>File 'lib2-v2.so' generated from its own source</title>
<updated>2019-05-03T13:36:19+00:00</updated>
<author>
<name>Roberto Ierusalimschy</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2019-05-03T13:36:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lua/commit/?id=01bded3d8cd88a2d7f472b45f706565f1a9ef3b1'/>
<id>urn:sha1:01bded3d8cd88a2d7f472b45f706565f1a9ef3b1</id>
<content type='text'>
Instead of being a copy of 'lib2.so', 'lib2-v2.so' has its own source
file ('lib22.c'), so that the test can distinguish both libraries.
</content>
</entry>
</feed>
