<feed xmlns='http://www.w3.org/2005/Atom'>
<title>lua/lundump.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>2026-04-23T20:57:42+00:00</updated>
<entry>
<title>Bug: 'lua_load' does not preserve the stack</title>
<updated>2026-04-23T20:57:42+00:00</updated>
<author>
<name>Roberto I</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2026-04-23T20:57:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lua/commit/?id=3228a97c6a953dcf397944161bb64b12f1ff5384'/>
<id>urn:sha1:3228a97c6a953dcf397944161bb64b12f1ff5384</id>
<content type='text'>
'lua_load' does not preserve the stack through the calls to the
reader function, as it should. Immediately after the first call (to
detect whether chunk is binary) it adds stuff, and it also adds a new
table when starting the compilation of each new function.
</content>
</entry>
<entry>
<title>Change in dumping of NULL strings</title>
<updated>2025-10-10T18:28:41+00:00</updated>
<author>
<name>Roberto I</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2025-10-10T18:28:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lua/commit/?id=7a92f3f99a26d9e51be40b744ed4fab0b50ecaa5'/>
<id>urn:sha1:7a92f3f99a26d9e51be40b744ed4fab0b50ecaa5</id>
<content type='text'>
When dumping a string, adding 2 to its size may overflow a size_t for
external strings, which may not have a header. (Adding 1 is Ok, because
all strings end with a '\0' not included in their size.) The new method
for saving NULL strings code them as a repeated string, using the
reserved index 0.
</content>
</entry>
<entry>
<title>Vararg table</title>
<updated>2025-09-16T16:26:24+00:00</updated>
<author>
<name>Roberto I</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2025-09-16T16:26:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lua/commit/?id=140b672e2ee2ac842661ece4b48e1a64f0cd11ea'/>
<id>urn:sha1:140b672e2ee2ac842661ece4b48e1a64f0cd11ea</id>
<content type='text'>
Not yet optimized nor documented.
</content>
</entry>
<entry>
<title>Added missing casts from lua_Unsigned to size_t</title>
<updated>2025-07-01T19:07:03+00:00</updated>
<author>
<name>Roberto Ierusalimschy</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2025-07-01T19:07:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lua/commit/?id=03bf7fdd4f3a588cd7ff0a8c51ed68c596d3d575'/>
<id>urn:sha1:03bf7fdd4f3a588cd7ff0a8c51ed68c596d3d575</id>
<content type='text'>
size_t can be smaller than lua_Usigned.
</content>
</entry>
<entry>
<title>Check string indices when loading binary chunk</title>
<updated>2025-06-17T14:40:49+00:00</updated>
<author>
<name>Roberto Ierusalimschy</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2025-06-17T14:40:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lua/commit/?id=f71156744851701b5d5fabdda5061b31e53f8f14'/>
<id>urn:sha1:f71156744851701b5d5fabdda5061b31e53f8f14</id>
<content type='text'>
Lua is not religious about that, but it tries to avoid crashes when
loading binary chunks.
</content>
</entry>
<entry>
<title>Dump uses varints also for integer constants</title>
<updated>2025-06-13T17:14:50+00:00</updated>
<author>
<name>Roberto Ierusalimschy</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2025-06-13T17:14:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lua/commit/?id=0cecf1ab6d76e6a7d200fb01bdd999b61835fe21'/>
<id>urn:sha1:0cecf1ab6d76e6a7d200fb01bdd999b61835fe21</id>
<content type='text'>
Unlike sizes, these constants can be negative, so it encodes those
integers into unsigned integers in a way that keeps small numbers
small.
</content>
</entry>
<entry>
<title>Loading a binary chunk should not break assertions</title>
<updated>2025-06-04T15:55:43+00:00</updated>
<author>
<name>Roberto Ierusalimschy</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2025-06-04T15:55:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lua/commit/?id=d05fe48bfdd89956c0ebd115dca0fb115aa28dd6'/>
<id>urn:sha1:d05fe48bfdd89956c0ebd115dca0fb115aa28dd6</id>
<content type='text'>
Although the execution of a bad binary chunk can crash the interpreter,
simply loading it should be safe.
</content>
</entry>
<entry>
<title>Janitorial work on casts</title>
<updated>2025-05-08T18:18:57+00:00</updated>
<author>
<name>Roberto Ierusalimschy</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2025-05-08T18:18:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lua/commit/?id=7ade1557627cf3f09c23c892ee227b7386f28414'/>
<id>urn:sha1:7ade1557627cf3f09c23c892ee227b7386f28414</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Checks for type 'int' added to binary header</title>
<updated>2025-03-10T18:21:32+00:00</updated>
<author>
<name>Roberto Ierusalimschy</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2025-03-10T18:21:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lua/commit/?id=b5b1995f2925b2f9be4a48304ac97a38f8608648'/>
<id>urn:sha1:b5b1995f2925b2f9be4a48304ac97a38f8608648</id>
<content type='text'>
The structure 'AbsLineInfo' is hard-dumped into binary chunks, and
it comprises two 'int' fields.
</content>
</entry>
<entry>
<title>Array sizes in undump changed from unsigned to int</title>
<updated>2025-02-20T13:09:04+00:00</updated>
<author>
<name>Roberto Ierusalimschy</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2025-02-20T13:09:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lua/commit/?id=e5f4927a0b97015d4c22bc22fbf80fb2c11ca7cc'/>
<id>urn:sha1:e5f4927a0b97015d4c22bc22fbf80fb2c11ca7cc</id>
<content type='text'>
Array sizes are always int and are dumped as int, so there is no reason
to read them back as unsigned.
</content>
</entry>
</feed>
