mirror of
https://github.com/godotengine/godot.git
synced 2025-10-20 08:23:29 +00:00
Made Vector::ptrw explicit for writing, compiler was sometimes using the wrong function,
leading to unnecesary copy on writes and reduced performance.
This commit is contained in:
parent
7dfba3cda9
commit
bc2e8d99e5
62 changed files with 148 additions and 147 deletions
|
@ -1378,7 +1378,7 @@ public:
|
|||
argp[i] = &arr[i];
|
||||
}
|
||||
|
||||
r_ret = Variant::construct(constructor->data_type, argp.ptr(), argp.size(), ce);
|
||||
r_ret = Variant::construct(constructor->data_type, (const Variant **)argp.ptr(), argp.size(), ce);
|
||||
|
||||
if (ce.error != Variant::CallError::CALL_OK) {
|
||||
r_error_str = "Invalid arguments to construct '" + Variant::get_type_name(constructor->data_type) + "'.";
|
||||
|
@ -1405,7 +1405,7 @@ public:
|
|||
argp[i] = &arr[i];
|
||||
}
|
||||
|
||||
VisualScriptBuiltinFunc::exec_func(bifunc->func, argp.ptr(), &r_ret, ce, r_error_str);
|
||||
VisualScriptBuiltinFunc::exec_func(bifunc->func, (const Variant **)argp.ptr(), &r_ret, ce, r_error_str);
|
||||
|
||||
if (ce.error != Variant::CallError::CALL_OK) {
|
||||
r_error_str = "Builtin Call Failed. " + r_error_str;
|
||||
|
@ -1437,7 +1437,7 @@ public:
|
|||
argp[i] = &arr[i];
|
||||
}
|
||||
|
||||
r_ret = base.call(call->method, argp.ptr(), argp.size(), ce);
|
||||
r_ret = base.call(call->method, (const Variant **)argp.ptr(), argp.size(), ce);
|
||||
|
||||
if (ce.error != Variant::CallError::CALL_OK) {
|
||||
r_error_str = "On call to '" + String(call->method) + "':";
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue