<feed xmlns='http://www.w3.org/2005/Atom'>
<title>lua/lundump.c, branch v5.4.9</title>
<subtitle>A mirror of https://github.com/lua/lua
</subtitle>
<id>https://git.lua4.win/lua/atom?h=v5.4.9</id>
<link rel='self' href='https://git.lua4.win/lua/atom?h=v5.4.9'/>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lua/'/>
<updated>2023-09-08T19:19:21+00:00</updated>
<entry>
<title>Removed test for "corrupted binary dump"</title>
<updated>2023-09-08T19:19:21+00:00</updated>
<author>
<name>Roberto Ierusalimschy</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2023-09-08T19:19:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lua/commit/?id=6baee9ef9d5657ab582c8a4b9f885ec58ed502d0'/>
<id>urn:sha1:6baee9ef9d5657ab582c8a4b9f885ec58ed502d0</id>
<content type='text'>
Test is too non portable. (For instance, it does not work for
different number types.)
</content>
</entry>
<entry>
<title>More disciplined use of 'getstr' and 'tsslen'</title>
<updated>2023-08-17T18:59:28+00:00</updated>
<author>
<name>Roberto Ierusalimschy</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2023-08-17T18:59:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lua/commit/?id=9b4f39ab14fb2e55345c3d23537d129dac23b091'/>
<id>urn:sha1:9b4f39ab14fb2e55345c3d23537d129dac23b091</id>
<content type='text'>
We may want to add other string variants in the future; this change
documents better where the code may need to handle those variants.
</content>
</entry>
<entry>
<title>Bug: Loading a corrupted binary file can segfault</title>
<updated>2023-03-17T18:52:09+00:00</updated>
<author>
<name>Roberto Ierusalimschy</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2023-03-17T18:52:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lua/commit/?id=ab859fe59b464a038a45552921cb2b23892343af'/>
<id>urn:sha1:ab859fe59b464a038a45552921cb2b23892343af</id>
<content type='text'>
The size of the list of upvalue names are stored separated from the
size of the list of upvalues, but they share the same array.
</content>
</entry>
<entry>
<title>Stack indices changed to union's</title>
<updated>2022-10-29T15:06:37+00:00</updated>
<author>
<name>Roberto Ierusalimschy</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2022-10-29T15:06:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lua/commit/?id=413a393e6222482f46599e138bebac162610a572'/>
<id>urn:sha1:413a393e6222482f46599e138bebac162610a572</id>
<content type='text'>
That will allow to change pointers to offsets while reallocating
the stack.
</content>
</entry>
<entry>
<title>Fixed bug of long strings in binary chunks</title>
<updated>2020-08-18T17:42:11+00:00</updated>
<author>
<name>Roberto Ierusalimschy</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2020-08-18T17:42:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lua/commit/?id=6bc0f13505bf5d4f613d725fe008c79e72f83ddf'/>
<id>urn:sha1:6bc0f13505bf5d4f613d725fe008c79e72f83ddf</id>
<content type='text'>
When "undumping" a long string, the function 'loadVector' can call the
reader function, which can run the garbage collector, which can collect
the string being read. So, the string must be anchored during the call
to 'loadVector'.
</content>
</entry>
<entry>
<title>Fixed detail in 'loadUpvalues'</title>
<updated>2020-06-30T18:36:26+00:00</updated>
<author>
<name>Roberto Ierusalimschy</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2020-06-30T18:36:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lua/commit/?id=422ce50d2e8856ed789d1359c673122dbb0088ea'/>
<id>urn:sha1:422ce50d2e8856ed789d1359c673122dbb0088ea</id>
<content type='text'>
In 'lundump.c', when loading the upvalues of a function, there can be
a read error if the chunk is truncated. In that case, the creation
of the error message can trigger an emergency collection while the
prototype is still anchored. So, the prototype must be GC consistent
before loading the upvales, which implies that it the 'name' fields
must be filled with NULL before the reading.
</content>
</entry>
<entry>
<title>Details</title>
<updated>2020-06-18T14:07:27+00:00</updated>
<author>
<name>Roberto Ierusalimschy</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2020-06-18T14:07:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lua/commit/?id=c33b1728aeb7dfeec4013562660e07d32697aa6b'/>
<id>urn:sha1:c33b1728aeb7dfeec4013562660e07d32697aa6b</id>
<content type='text'>
Added as incompatibility, in the manual, the extra return of 'io.lines'.
</content>
</entry>
<entry>
<title>Fixed missing GC barriers in compiler and undump</title>
<updated>2020-06-16T12:54:20+00:00</updated>
<author>
<name>Roberto Ierusalimschy</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2020-06-16T12:54:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lua/commit/?id=6d7cd31feec58011a593cf732274a33dcc1bcb53'/>
<id>urn:sha1:6d7cd31feec58011a593cf732274a33dcc1bcb53</id>
<content type='text'>
While building a new prototype, the GC needs barriers for every object
(strings and nested prototypes) that is attached to the new prototype.
</content>
</entry>
<entry>
<title>Back to old encoding of versions in binary files</title>
<updated>2020-05-06T17:19:08+00:00</updated>
<author>
<name>Roberto Ierusalimschy</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2020-05-06T17:19:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lua/commit/?id=61a4e64a6667bedaa882571c48a173ef5a4ba73b'/>
<id>urn:sha1:61a4e64a6667bedaa882571c48a173ef5a4ba73b</id>
<content type='text'>
(Undoing part of commit f53eabeed8.)  It is better to keep this encoding
stable, so that all Lua versions can read at least the version of a
binary file.
</content>
</entry>
<entry>
<title>Code style in 'ldump'/'lundump'.</title>
<updated>2020-02-27T18:17:44+00:00</updated>
<author>
<name>Roberto Ierusalimschy</name>
<email>roberto@inf.puc-rio.br</email>
</author>
<published>2020-02-27T18:17:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/lua/commit/?id=e8a52281d9cba1c8dd49a06e7523d7e39794ecc1'/>
<id>urn:sha1:e8a52281d9cba1c8dd49a06e7523d7e39794ecc1</id>
<content type='text'>
- function names start with lower case;
- state is always the first parameter.
</content>
</entry>
</feed>
