You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
45 lines
1.4 KiB
45 lines
1.4 KiB
https://github.com/lua/lua/commit/6baee9ef9d5657ab582c8a4b9f885ec58ed502d0
|
|
https://bugs.gentoo.org/914562
|
|
|
|
From 6baee9ef9d5657ab582c8a4b9f885ec58ed502d0 Mon Sep 17 00:00:00 2001
|
|
From: Roberto Ierusalimschy <roberto@inf.puc-rio.br>
|
|
Date: Fri, 8 Sep 2023 16:19:21 -0300
|
|
Subject: [PATCH] Removed test for "corrupted binary dump"
|
|
|
|
Test is too non portable. (For instance, it does not work for
|
|
different number types.)
|
|
--- a/src/lundump.c
|
|
+++ b/src/lundump.c
|
|
@@ -81,7 +81,7 @@ static size_t loadUnsigned (LoadState *S, size_t limit) {
|
|
|
|
|
|
static size_t loadSize (LoadState *S) {
|
|
- return loadUnsigned(S, ~(size_t)0);
|
|
+ return loadUnsigned(S, MAX_SIZET);
|
|
}
|
|
|
|
|
|
--- a/tests/calls.lua
|
|
+++ b/tests/calls.lua
|
|
@@ -342,20 +342,6 @@ do -- another bug (in 5.4.0)
|
|
end
|
|
|
|
|
|
-do -- another bug (since 5.2)
|
|
- -- corrupted binary dump: list of upvalue names is larger than number
|
|
- -- of upvalues, overflowing the array of upvalues.
|
|
- local code =
|
|
- "\x1b\x4c\x75\x61\x54\x00\x19\x93\x0d\x0a\x1a\x0a\x04\x08\x08\x78\x56\z
|
|
- \x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x77\x40\x00\x86\x40\z
|
|
- \x74\x65\x6d\x70\x81\x81\x01\x00\x02\x82\x48\x00\x02\x00\xc7\x00\x01\z
|
|
- \x00\x80\x80\x80\x82\x00\x00\x80\x81\x82\x78\x80\x82\x81\x86\x40\x74\z
|
|
- \x65\x6d\x70"
|
|
-
|
|
- assert(load(code)) -- segfaults in previous versions
|
|
-end
|
|
-
|
|
-
|
|
x = string.dump(load("x = 1; return x"))
|
|
a = assert(load(read1(x), nil, "b"))
|
|
assert(a() == 1 and _G.x == 1)
|