|
@@ -57,8 +57,11 @@ Error ResourceLoader::load_threaded_request(const String &p_path, const String &
|
|
|
ResourceLoader::ThreadLoadStatus ResourceLoader::load_threaded_get_status(const String &p_path, Array r_progress) {
|
|
|
float progress = 0;
|
|
|
::ResourceLoader::ThreadLoadStatus tls = ::ResourceLoader::load_threaded_get_status(p_path, &progress);
|
|
|
- r_progress.resize(1);
|
|
|
- r_progress[0] = progress;
|
|
|
+ // Default array should never be modified, it causes the hash of the method to change.
|
|
|
+ if (!ClassDB::is_default_array_arg(r_progress)) {
|
|
|
+ r_progress.resize(1);
|
|
|
+ r_progress[0] = progress;
|
|
|
+ }
|
|
|
return (ThreadLoadStatus)tls;
|
|
|
}
|
|
|
|
|
@@ -131,7 +134,7 @@ ResourceUID::ID ResourceLoader::get_resource_uid(const String &p_path) {
|
|
|
|
|
|
void ResourceLoader::_bind_methods() {
|
|
|
ClassDB::bind_method(D_METHOD("load_threaded_request", "path", "type_hint", "use_sub_threads", "cache_mode"), &ResourceLoader::load_threaded_request, DEFVAL(""), DEFVAL(false), DEFVAL(CACHE_MODE_REUSE));
|
|
|
- ClassDB::bind_method(D_METHOD("load_threaded_get_status", "path", "progress"), &ResourceLoader::load_threaded_get_status, DEFVAL(Array()));
|
|
|
+ ClassDB::bind_method(D_METHOD("load_threaded_get_status", "path", "progress"), &ResourceLoader::load_threaded_get_status, DEFVAL_ARRAY);
|
|
|
ClassDB::bind_method(D_METHOD("load_threaded_get", "path"), &ResourceLoader::load_threaded_get);
|
|
|
|
|
|
ClassDB::bind_method(D_METHOD("load", "path", "type_hint", "cache_mode"), &ResourceLoader::load, DEFVAL(""), DEFVAL(CACHE_MODE_REUSE));
|
|
@@ -307,7 +310,10 @@ int OS::execute(const String &p_path, const Vector<String> &p_arguments, Array r
|
|
|
String pipe;
|
|
|
int exitcode = 0;
|
|
|
Error err = ::OS::get_singleton()->execute(p_path, args, &pipe, &exitcode, p_read_stderr, nullptr, p_open_console);
|
|
|
- r_output.push_back(pipe);
|
|
|
+ // Default array should never be modified, it causes the hash of the method to change.
|
|
|
+ if (!ClassDB::is_default_array_arg(r_output)) {
|
|
|
+ r_output.push_back(pipe);
|
|
|
+ }
|
|
|
if (err != OK) {
|
|
|
return -1;
|
|
|
}
|
|
@@ -618,7 +624,7 @@ void OS::_bind_methods() {
|
|
|
ClassDB::bind_method(D_METHOD("get_system_font_path_for_text", "font_name", "text", "locale", "script", "weight", "stretch", "italic"), &OS::get_system_font_path_for_text, DEFVAL(String()), DEFVAL(String()), DEFVAL(400), DEFVAL(100), DEFVAL(false));
|
|
|
ClassDB::bind_method(D_METHOD("get_executable_path"), &OS::get_executable_path);
|
|
|
ClassDB::bind_method(D_METHOD("read_string_from_stdin"), &OS::read_string_from_stdin);
|
|
|
- ClassDB::bind_method(D_METHOD("execute", "path", "arguments", "output", "read_stderr", "open_console"), &OS::execute, DEFVAL(Array()), DEFVAL(false), DEFVAL(false));
|
|
|
+ ClassDB::bind_method(D_METHOD("execute", "path", "arguments", "output", "read_stderr", "open_console"), &OS::execute, DEFVAL_ARRAY, DEFVAL(false), DEFVAL(false));
|
|
|
ClassDB::bind_method(D_METHOD("execute_with_pipe", "path", "arguments", "blocking"), &OS::execute_with_pipe, DEFVAL(true));
|
|
|
ClassDB::bind_method(D_METHOD("create_process", "path", "arguments", "open_console"), &OS::create_process, DEFVAL(false));
|
|
|
ClassDB::bind_method(D_METHOD("create_instance", "arguments"), &OS::create_instance);
|