Skip to content

Commit

Permalink
Disable threads used to check on plugins to load
Browse files Browse the repository at this point in the history
The functionality is unavailable on Android (requires export capability) and unnecessarily consumes resources
  • Loading branch information
m4gr3d committed Aug 15, 2022
1 parent 3047954 commit 3ac6b6a
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 4 deletions.
10 changes: 6 additions & 4 deletions platform/android/export/export_plugin.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -228,6 +228,7 @@ static const char *AAB_ASSETS_DIRECTORY = "res://android/build/assetPacks/instal
static const int DEFAULT_MIN_SDK_VERSION = 19; // Should match the value in 'platform/android/java/app/config.gradle#minSdk'
static const int DEFAULT_TARGET_SDK_VERSION = 32; // Should match the value in 'platform/android/java/app/config.gradle#targetSdk'

#ifndef ANDROID_ENABLED
void EditorExportPlatformAndroid::_check_for_changes_poll_thread(void *ud) {
EditorExportPlatformAndroid *ea = (EditorExportPlatformAndroid *)ud;

Expand Down Expand Up @@ -259,7 +260,6 @@ void EditorExportPlatformAndroid::_check_for_changes_poll_thread(void *ud) {
}
}

#ifndef ANDROID_ENABLED
// Check for devices updates
String adb = get_adb_path();
if (FileAccess::exists(adb)) {
Expand Down Expand Up @@ -373,7 +373,6 @@ void EditorExportPlatformAndroid::_check_for_changes_poll_thread(void *ud) {

ea->device_lock.unlock();
}
#endif

uint64_t sleep = 300'000;
uint64_t wait = 3'000'000;
Expand All @@ -386,7 +385,6 @@ void EditorExportPlatformAndroid::_check_for_changes_poll_thread(void *ud) {
}
}

#ifndef ANDROID_ENABLED
if (EditorSettings::get_singleton()->get("export/android/shutdown_adb_on_exit")) {
String adb = get_adb_path();
if (!FileAccess::exists(adb)) {
Expand All @@ -397,8 +395,8 @@ void EditorExportPlatformAndroid::_check_for_changes_poll_thread(void *ud) {
args.push_back("kill-server");
OS::get_singleton()->execute(adb, args, true);
}
#endif
}
#endif

String EditorExportPlatformAndroid::get_project_name(const String &p_name) const {
String aname;
Expand Down Expand Up @@ -3438,10 +3436,14 @@ EditorExportPlatformAndroid::EditorExportPlatformAndroid() {

devices_changed.set();
plugins_changed.set();
#ifndef ANDROID_ENABLED
check_for_changes_thread.start(_check_for_changes_poll_thread, this);
#endif
}

EditorExportPlatformAndroid::~EditorExportPlatformAndroid() {
#ifndef ANDROID_ENABLED
quit_request.set();
check_for_changes_thread.wait_to_finish();
#endif
}
2 changes: 2 additions & 0 deletions platform/android/export/export_plugin.h
Original file line number Diff line number Diff line change
Expand Up @@ -98,10 +98,12 @@ class EditorExportPlatformAndroid : public EditorExportPlatform {
Vector<Device> devices;
SafeFlag devices_changed;
Mutex device_lock;
#ifndef ANDROID_ENABLED
Thread check_for_changes_thread;
SafeFlag quit_request;

static void _check_for_changes_poll_thread(void *ud);
#endif

String get_project_name(const String &p_name) const;

Expand Down
8 changes: 8 additions & 0 deletions platform/iphone/export/export.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -57,8 +57,10 @@ class EditorExportPlatformIOS : public EditorExportPlatform {

// Plugins
SafeFlag plugins_changed;
#ifndef ANDROID_ENABLED
Thread check_for_changes_thread;
SafeFlag quit_request;
#endif
Mutex plugins_lock;
Vector<PluginConfigIOS> plugins;

Expand Down Expand Up @@ -142,6 +144,7 @@ class EditorExportPlatformIOS : public EditorExportPlatform {
return true;
}

#ifndef ANDROID_ENABLED
static void _check_for_changes_poll_thread(void *ud) {
EditorExportPlatformIOS *ea = (EditorExportPlatformIOS *)ud;

Expand Down Expand Up @@ -177,6 +180,7 @@ class EditorExportPlatformIOS : public EditorExportPlatform {
}
}
}
#endif

protected:
virtual void get_preset_features(const Ref<EditorExportPreset> &p_preset, List<String> *r_features);
Expand Down Expand Up @@ -2159,12 +2163,16 @@ EditorExportPlatformIOS::EditorExportPlatformIOS() {

plugins_changed.set();

#ifndef ANDROID_ENABLED
check_for_changes_thread.start(_check_for_changes_poll_thread, this);
#endif
}

EditorExportPlatformIOS::~EditorExportPlatformIOS() {
#ifndef ANDROID_ENABLED
quit_request.set();
check_for_changes_thread.wait_to_finish();
#endif
}

void register_iphone_exporter() {
Expand Down

0 comments on commit 3ac6b6a

Please sign in to comment.