Merge pull request #22934 from SeleckyErik/issue-11457

GDscript function str2var now returns null on invalid input
This commit is contained in:
Rémi Verschelde 2018-12-07 15:43:47 +01:00 committed by GitHub
commit 19f2a188bb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -758,22 +758,14 @@ void GDScriptFunctions::call(Function p_func, const Variant **p_args, int p_arg_
r_ret = Variant();
return;
}
r_ret = *p_args[0];
VariantParser::StreamString ss;
ss.s = *p_args[0];
String errs;
int line;
Error err = VariantParser::parse(&ss, r_ret, errs, line);
if (err != OK) {
r_error.error = Variant::CallError::CALL_ERROR_INVALID_ARGUMENT;
r_error.argument = 0;
r_error.expected = Variant::STRING;
r_ret = "Parse error at line " + itos(line) + ": " + errs;
return;
}
(void)VariantParser::parse(&ss, r_ret, errs, line);
} break;
case VAR_TO_BYTES: {
VALIDATE_ARG_COUNT(1);