Fixed assignments with case-insensitive event names

This commit is contained in:
smallmodel 2023-08-19 00:57:19 +02:00
parent 9ba5710412
commit f16b992a97
No known key found for this signature in database
GPG key ID: A96F163ED4891440

View file

@ -248,11 +248,10 @@ bool ScriptCompiler::BuiltinWriteVariable(unsigned int sourcePos, int type, int
void ScriptCompiler::EmitAssignmentStatement(sval_t lhs, unsigned int sourcePos)
{
int eventnum;
sval_t listener_val;
const char *name = lhs.node[2].stringValue;
str name2 = name;
name2.tolower();
int eventnum;
unsigned int index;
sval_t listener_val;
const char *name = lhs.node[2].stringValue;
if (lhs.node[0].type != ENUM_field) {
if (lhs.node[0].type == ENUM_array_expr) {
@ -265,13 +264,8 @@ void ScriptCompiler::EmitAssignmentStatement(sval_t lhs, unsigned int sourcePos)
return;
}
unsigned int index = Director.AddString(name);
eventnum = Event::FindSetterEventNum(name2);
if (eventnum) {
index = Director.GetString(name2);
}
index = Director.AddString(name);
eventnum = Event::FindSetterEventNum(name);
listener_val = lhs.node[1];