Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Y
YGOProUnity_V2
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
List
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
赤子奈落
YGOProUnity_V2
Commits
7958581b
Commit
7958581b
authored
Jun 30, 2021
by
mercury233
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update lua version
parent
4b2d610a
Changes
10
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
60 additions
and
39 deletions
+60
-39
AI_core_vs2017solution/lua/lapi.c
AI_core_vs2017solution/lua/lapi.c
+6
-6
AI_core_vs2017solution/lua/lauxlib.c
AI_core_vs2017solution/lua/lauxlib.c
+7
-2
AI_core_vs2017solution/lua/lcode.c
AI_core_vs2017solution/lua/lcode.c
+1
-1
AI_core_vs2017solution/lua/ldebug.c
AI_core_vs2017solution/lua/ldebug.c
+4
-3
AI_core_vs2017solution/lua/liolib.c
AI_core_vs2017solution/lua/liolib.c
+2
-0
AI_core_vs2017solution/lua/llex.c
AI_core_vs2017solution/lua/llex.c
+17
-14
AI_core_vs2017solution/lua/lobject.c
AI_core_vs2017solution/lua/lobject.c
+1
-1
AI_core_vs2017solution/lua/lparser.c
AI_core_vs2017solution/lua/lparser.c
+3
-0
AI_core_vs2017solution/lua/lua.h
AI_core_vs2017solution/lua/lua.h
+3
-4
AI_core_vs2017solution/lua/lundump.c
AI_core_vs2017solution/lua/lundump.c
+16
-8
No files found.
AI_core_vs2017solution/lua/lapi.c
View file @
7958581b
...
...
@@ -1254,13 +1254,12 @@ LUA_API const char *lua_setupvalue (lua_State *L, int funcindex, int n) {
}
static
UpVal
**
getupvalref
(
lua_State
*
L
,
int
fidx
,
int
n
,
LClosure
**
pf
)
{
static
UpVal
**
getupvalref
(
lua_State
*
L
,
int
fidx
,
int
n
)
{
LClosure
*
f
;
StkId
fi
=
index2addr
(
L
,
fidx
);
api_check
(
L
,
ttisLclosure
(
fi
),
"Lua function expected"
);
f
=
clLvalue
(
fi
);
api_check
(
L
,
(
1
<=
n
&&
n
<=
f
->
p
->
sizeupvalues
),
"invalid upvalue index"
);
if
(
pf
)
*
pf
=
f
;
return
&
f
->
upvals
[
n
-
1
];
/* get its upvalue pointer */
}
...
...
@@ -1269,7 +1268,7 @@ LUA_API void *lua_upvalueid (lua_State *L, int fidx, int n) {
StkId
fi
=
index2addr
(
L
,
fidx
);
switch
(
ttype
(
fi
))
{
case
LUA_TLCL
:
{
/* lua closure */
return
*
getupvalref
(
L
,
fidx
,
n
,
NULL
);
return
*
getupvalref
(
L
,
fidx
,
n
);
}
case
LUA_TCCL
:
{
/* C closure */
CClosure
*
f
=
clCvalue
(
fi
);
...
...
@@ -1286,9 +1285,10 @@ LUA_API void *lua_upvalueid (lua_State *L, int fidx, int n) {
LUA_API
void
lua_upvaluejoin
(
lua_State
*
L
,
int
fidx1
,
int
n1
,
int
fidx2
,
int
n2
)
{
LClosure
*
f1
;
UpVal
**
up1
=
getupvalref
(
L
,
fidx1
,
n1
,
&
f1
);
UpVal
**
up2
=
getupvalref
(
L
,
fidx2
,
n2
,
NULL
);
UpVal
**
up1
=
getupvalref
(
L
,
fidx1
,
n1
);
UpVal
**
up2
=
getupvalref
(
L
,
fidx2
,
n2
);
if
(
*
up1
==
*
up2
)
return
;
luaC_upvdeccount
(
L
,
*
up1
);
*
up1
=
*
up2
;
(
*
up1
)
->
refcount
++
;
...
...
AI_core_vs2017solution/lua/lauxlib.c
View file @
7958581b
...
...
@@ -1011,8 +1011,13 @@ static void *l_alloc (void *ud, void *ptr, size_t osize, size_t nsize) {
free
(
ptr
);
return
NULL
;
}
else
return
realloc
(
ptr
,
nsize
);
else
{
/* cannot fail when shrinking a block */
void
*
newptr
=
realloc
(
ptr
,
nsize
);
if
(
newptr
==
NULL
&&
ptr
!=
NULL
&&
nsize
<=
osize
)
return
ptr
;
/* keep the original block */
else
/* no fail or not shrinking */
return
newptr
;
/* use the new block */
}
}
...
...
AI_core_vs2017solution/lua/lcode.c
View file @
7958581b
...
...
@@ -1061,7 +1061,7 @@ static void codecomp (FuncState *fs, BinOpr opr, expdesc *e1, expdesc *e2) {
/*
** Ap
l
ly prefix operation 'op' to expression 'e'.
** Ap
p
ly prefix operation 'op' to expression 'e'.
*/
void
luaK_prefix
(
FuncState
*
fs
,
UnOpr
op
,
expdesc
*
e
,
int
line
)
{
static
const
expdesc
ef
=
{
VKINT
,
{
0
},
NO_JUMP
,
NO_JUMP
};
...
...
AI_core_vs2017solution/lua/ldebug.c
View file @
7958581b
...
...
@@ -133,10 +133,11 @@ static const char *upvalname (Proto *p, int uv) {
static
const
char
*
findvararg
(
CallInfo
*
ci
,
int
n
,
StkId
*
pos
)
{
int
nparams
=
clLvalue
(
ci
->
func
)
->
p
->
numparams
;
if
(
n
>=
cast_int
(
ci
->
u
.
l
.
base
-
ci
->
func
)
-
nparams
)
int
nvararg
=
cast_int
(
ci
->
u
.
l
.
base
-
ci
->
func
)
-
nparams
;
if
(
n
<=
-
nvararg
)
return
NULL
;
/* no such vararg */
else
{
*
pos
=
ci
->
func
+
nparams
+
n
;
*
pos
=
ci
->
func
+
nparams
-
n
;
return
"(*vararg)"
;
/* generic name for any vararg */
}
}
...
...
@@ -148,7 +149,7 @@ static const char *findlocal (lua_State *L, CallInfo *ci, int n,
StkId
base
;
if
(
isLua
(
ci
))
{
if
(
n
<
0
)
/* access to vararg values? */
return
findvararg
(
ci
,
-
n
,
pos
);
return
findvararg
(
ci
,
n
,
pos
);
else
{
base
=
ci
->
u
.
l
.
base
;
name
=
luaF_getlocalname
(
ci_func
(
ci
)
->
p
,
n
,
currentpc
(
ci
));
...
...
AI_core_vs2017solution/lua/liolib.c
View file @
7958581b
...
...
@@ -277,6 +277,8 @@ static int io_popen (lua_State *L) {
const
char
*
filename
=
luaL_checkstring
(
L
,
1
);
const
char
*
mode
=
luaL_optstring
(
L
,
2
,
"r"
);
LStream
*
p
=
newprefile
(
L
);
luaL_argcheck
(
L
,
((
mode
[
0
]
==
'r'
||
mode
[
0
]
==
'w'
)
&&
mode
[
1
]
==
'\0'
),
2
,
"invalid mode"
);
p
->
f
=
l_popen
(
L
,
filename
,
mode
);
p
->
closef
=
&
io_pclose
;
return
(
p
->
f
==
NULL
)
?
luaL_fileresult
(
L
,
0
,
filename
)
:
1
;
...
...
AI_core_vs2017solution/lua/llex.c
View file @
7958581b
...
...
@@ -244,12 +244,12 @@ static int read_numeral (LexState *ls, SemInfo *seminfo) {
/*
**
skip a sequence '[=*[' or ']=*]'; if sequence is well formed, return
**
its number of '='s; otherwise, return a negative number (-1 iff there
**
are no '='s after initial bracket)
**
reads a sequence '[=*[' or ']=*]', leaving the last bracket.
**
If sequence is well formed, return its number of '='s + 2; otherwise,
**
return 1 if there is no '='s or 0 otherwise (an unfinished '[==...').
*/
static
in
t
skip_sep
(
LexState
*
ls
)
{
in
t
count
=
0
;
static
size_
t
skip_sep
(
LexState
*
ls
)
{
size_
t
count
=
0
;
int
s
=
ls
->
current
;
lua_assert
(
s
==
'['
||
s
==
']'
);
save_and_next
(
ls
);
...
...
@@ -257,11 +257,14 @@ static int skip_sep (LexState *ls) {
save_and_next
(
ls
);
count
++
;
}
return
(
ls
->
current
==
s
)
?
count
:
(
-
count
)
-
1
;
return
(
ls
->
current
==
s
)
?
count
+
2
:
(
count
==
0
)
?
1
:
0
;
}
static
void
read_long_string
(
LexState
*
ls
,
SemInfo
*
seminfo
,
in
t
sep
)
{
static
void
read_long_string
(
LexState
*
ls
,
SemInfo
*
seminfo
,
size_
t
sep
)
{
int
line
=
ls
->
linenumber
;
/* initial line (for error message) */
save_and_next
(
ls
);
/* skip 2nd '[' */
if
(
currIsNewline
(
ls
))
/* string starts with a newline? */
...
...
@@ -295,8 +298,8 @@ static void read_long_string (LexState *ls, SemInfo *seminfo, int sep) {
}
}
endloop
:
if
(
seminfo
)
seminfo
->
ts
=
luaX_newstring
(
ls
,
luaZ_buffer
(
ls
->
buff
)
+
(
2
+
sep
)
,
luaZ_bufflen
(
ls
->
buff
)
-
2
*
(
2
+
sep
)
);
seminfo
->
ts
=
luaX_newstring
(
ls
,
luaZ_buffer
(
ls
->
buff
)
+
sep
,
luaZ_bufflen
(
ls
->
buff
)
-
2
*
sep
);
}
...
...
@@ -444,9 +447,9 @@ static int llex (LexState *ls, SemInfo *seminfo) {
/* else is a comment */
next
(
ls
);
if
(
ls
->
current
==
'['
)
{
/* long comment? */
in
t
sep
=
skip_sep
(
ls
);
size_
t
sep
=
skip_sep
(
ls
);
luaZ_resetbuffer
(
ls
->
buff
);
/* 'skip_sep' may dirty the buffer */
if
(
sep
>=
0
)
{
if
(
sep
>=
2
)
{
read_long_string
(
ls
,
NULL
,
sep
);
/* skip long comment */
luaZ_resetbuffer
(
ls
->
buff
);
/* previous call may dirty the buff. */
break
;
...
...
@@ -458,12 +461,12 @@ static int llex (LexState *ls, SemInfo *seminfo) {
break
;
}
case
'['
:
{
/* long string or simply '[' */
in
t
sep
=
skip_sep
(
ls
);
if
(
sep
>=
0
)
{
size_
t
sep
=
skip_sep
(
ls
);
if
(
sep
>=
2
)
{
read_long_string
(
ls
,
seminfo
,
sep
);
return
TK_STRING
;
}
else
if
(
sep
!=
-
1
)
/* '[=...' missing second bracket */
else
if
(
sep
==
0
)
/* '[=...' missing second bracket */
lexerror
(
ls
,
"invalid long string delimiter"
,
TK_STRING
);
return
'['
;
}
...
...
AI_core_vs2017solution/lua/lobject.c
View file @
7958581b
...
...
@@ -266,7 +266,7 @@ static const char *l_str2dloc (const char *s, lua_Number *result, int mode) {
** - 'n'/'N' means 'inf' or 'nan' (which should be rejected)
** - '.' just optimizes the search for the common case (nothing special)
** This function accepts both the current locale or a dot as the radix
** mark. If the conver
t
ion fails, it may mean number has a dot but
** mark. If the conver
s
ion fails, it may mean number has a dot but
** locale accepts something else. In that case, the code copies 's'
** to a buffer (because 's' is read-only), changes the dot to the
** current locale radix mark, and tries to convert again.
...
...
AI_core_vs2017solution/lua/lparser.c
View file @
7958581b
...
...
@@ -544,6 +544,7 @@ static void open_func (LexState *ls, FuncState *fs, BlockCnt *bl) {
fs
->
bl
=
NULL
;
f
=
fs
->
f
;
f
->
source
=
ls
->
source
;
luaC_objbarrier
(
ls
->
L
,
f
,
f
->
source
);
f
->
maxstacksize
=
2
;
/* registers 0/1 are always valid */
enterblock
(
fs
,
bl
,
0
);
}
...
...
@@ -1616,6 +1617,7 @@ static void mainfunc (LexState *ls, FuncState *fs) {
fs
->
f
->
is_vararg
=
1
;
/* main function is always declared vararg */
init_exp
(
&
v
,
VLOCAL
,
0
);
/* create and... */
newupvalue
(
fs
,
ls
->
envn
,
&
v
);
/* ...set environment upvalue */
luaC_objbarrier
(
ls
->
L
,
fs
->
f
,
ls
->
envn
);
luaX_next
(
ls
);
/* read first token */
statlist
(
ls
);
/* parse main body */
check
(
ls
,
TK_EOS
);
...
...
@@ -1634,6 +1636,7 @@ LClosure *luaY_parser (lua_State *L, ZIO *z, Mbuffer *buff,
sethvalue
(
L
,
L
->
top
,
lexstate
.
h
);
/* anchor it */
luaD_inctop
(
L
);
funcstate
.
f
=
cl
->
p
=
luaF_newproto
(
L
);
luaC_objbarrier
(
L
,
cl
,
cl
->
p
);
funcstate
.
f
->
source
=
luaS_new
(
L
,
name
);
/* create and anchor TString */
lua_assert
(
iswhite
(
funcstate
.
f
));
/* do not need barrier here */
lexstate
.
buff
=
buff
;
...
...
AI_core_vs2017solution/lua/lua.h
View file @
7958581b
/*
** $Id: lua.h,v 1.332.1.2 2018/06/13 16:58:17 roberto Exp $
** Lua - A Scripting Language
** Lua.org, PUC-Rio, Brazil (http://www.lua.org)
** See Copyright Notice at the end of this file
...
...
@@ -19,11 +18,11 @@
#define LUA_VERSION_MAJOR "5"
#define LUA_VERSION_MINOR "3"
#define LUA_VERSION_NUM 503
#define LUA_VERSION_RELEASE "
5
"
#define LUA_VERSION_RELEASE "
6
"
#define LUA_VERSION "Lua " LUA_VERSION_MAJOR "." LUA_VERSION_MINOR
#define LUA_RELEASE LUA_VERSION "." LUA_VERSION_RELEASE
#define LUA_COPYRIGHT LUA_RELEASE " Copyright (C) 1994-20
18
Lua.org, PUC-Rio"
#define LUA_COPYRIGHT LUA_RELEASE " Copyright (C) 1994-20
20
Lua.org, PUC-Rio"
#define LUA_AUTHORS "R. Ierusalimschy, L. H. de Figueiredo, W. Celes"
...
...
@@ -460,7 +459,7 @@ struct lua_Debug {
/******************************************************************************
* Copyright (C) 1994-20
18
Lua.org, PUC-Rio.
* Copyright (C) 1994-20
20
Lua.org, PUC-Rio.
*
* Permission is hereby granted, free of charge, to any person obtaining
* a copy of this software and associated documentation files (the
...
...
AI_core_vs2017solution/lua/lundump.c
View file @
7958581b
...
...
@@ -85,8 +85,10 @@ static lua_Integer LoadInteger (LoadState *S) {
}
static
TString
*
LoadString
(
LoadState
*
S
)
{
static
TString
*
LoadString
(
LoadState
*
S
,
Proto
*
p
)
{
lua_State
*
L
=
S
->
L
;
size_t
size
=
LoadByte
(
S
);
TString
*
ts
;
if
(
size
==
0xFF
)
LoadVar
(
S
,
size
);
if
(
size
==
0
)
...
...
@@ -94,13 +96,17 @@ static TString *LoadString (LoadState *S) {
else
if
(
--
size
<=
LUAI_MAXSHORTLEN
)
{
/* short string? */
char
buff
[
LUAI_MAXSHORTLEN
];
LoadVector
(
S
,
buff
,
size
);
return
luaS_newlstr
(
S
->
L
,
buff
,
size
);
ts
=
luaS_newlstr
(
L
,
buff
,
size
);
}
else
{
/* long string */
TString
*
ts
=
luaS_createlngstrobj
(
S
->
L
,
size
);
ts
=
luaS_createlngstrobj
(
L
,
size
);
setsvalue2s
(
L
,
L
->
top
,
ts
);
/* anchor it ('loadVector' can GC) */
luaD_inctop
(
L
);
LoadVector
(
S
,
getstr
(
ts
),
size
);
/* load directly in final place */
return
ts
;
L
->
top
--
;
/* pop string */
}
luaC_objbarrier
(
L
,
p
,
ts
);
return
ts
;
}
...
...
@@ -140,7 +146,7 @@ static void LoadConstants (LoadState *S, Proto *f) {
break
;
case
LUA_TSHRSTR
:
case
LUA_TLNGSTR
:
setsvalue2n
(
S
->
L
,
o
,
LoadString
(
S
));
setsvalue2n
(
S
->
L
,
o
,
LoadString
(
S
,
f
));
break
;
default:
lua_assert
(
0
);
...
...
@@ -158,6 +164,7 @@ static void LoadProtos (LoadState *S, Proto *f) {
f
->
p
[
i
]
=
NULL
;
for
(
i
=
0
;
i
<
n
;
i
++
)
{
f
->
p
[
i
]
=
luaF_newproto
(
S
->
L
);
luaC_objbarrier
(
S
->
L
,
f
,
f
->
p
[
i
]);
LoadFunction
(
S
,
f
->
p
[
i
],
f
->
source
);
}
}
...
...
@@ -189,18 +196,18 @@ static void LoadDebug (LoadState *S, Proto *f) {
for
(
i
=
0
;
i
<
n
;
i
++
)
f
->
locvars
[
i
].
varname
=
NULL
;
for
(
i
=
0
;
i
<
n
;
i
++
)
{
f
->
locvars
[
i
].
varname
=
LoadString
(
S
);
f
->
locvars
[
i
].
varname
=
LoadString
(
S
,
f
);
f
->
locvars
[
i
].
startpc
=
LoadInt
(
S
);
f
->
locvars
[
i
].
endpc
=
LoadInt
(
S
);
}
n
=
LoadInt
(
S
);
for
(
i
=
0
;
i
<
n
;
i
++
)
f
->
upvalues
[
i
].
name
=
LoadString
(
S
);
f
->
upvalues
[
i
].
name
=
LoadString
(
S
,
f
);
}
static
void
LoadFunction
(
LoadState
*
S
,
Proto
*
f
,
TString
*
psource
)
{
f
->
source
=
LoadString
(
S
);
f
->
source
=
LoadString
(
S
,
f
);
if
(
f
->
source
==
NULL
)
/* no source in dump? */
f
->
source
=
psource
;
/* reuse parent's source */
f
->
linedefined
=
LoadInt
(
S
);
...
...
@@ -271,6 +278,7 @@ LClosure *luaU_undump(lua_State *L, ZIO *Z, const char *name) {
setclLvalue
(
L
,
L
->
top
,
cl
);
luaD_inctop
(
L
);
cl
->
p
=
luaF_newproto
(
L
);
luaC_objbarrier
(
L
,
cl
,
cl
->
p
);
LoadFunction
(
&
S
,
cl
->
p
,
NULL
);
lua_assert
(
cl
->
nupvalues
==
cl
->
p
->
sizeupvalues
);
luai_verifycode
(
L
,
buff
,
cl
->
p
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment