diff options
author | bruvzg <7645683+bruvzg@users.noreply.github.com> | 2020-07-10 18:45:12 +0300 |
---|---|---|
committer | bruvzg <7645683+bruvzg@users.noreply.github.com> | 2020-07-10 18:45:12 +0300 |
commit | 5d54c015b2dd0a26237c00788be25b3da4cfe3dd (patch) | |
tree | eb5d21e1911420ebd0333924077f22bbd7ac7368 /modules/mono/utils | |
parent | 70e21154f0416c13655ad8ce176a1b899a5e70d2 (diff) |
[macOS, Mono] Fix "Wdeprecated-declarations" build error.
Diffstat (limited to 'modules/mono/utils')
-rw-r--r-- | modules/mono/utils/osx_utils.cpp | 23 |
1 files changed, 10 insertions, 13 deletions
diff --git a/modules/mono/utils/osx_utils.cpp b/modules/mono/utils/osx_utils.cpp index 8e3e51e688..e68466b1cf 100644 --- a/modules/mono/utils/osx_utils.cpp +++ b/modules/mono/utils/osx_utils.cpp @@ -38,24 +38,21 @@ #include <CoreServices/CoreServices.h> bool osx_is_app_bundle_installed(const String &p_bundle_id) { - CFURLRef app_url = nullptr; CFStringRef bundle_id = CFStringCreateWithCString(nullptr, p_bundle_id.utf8(), kCFStringEncodingUTF8); - OSStatus result = LSFindApplicationForInfo(kLSUnknownCreator, bundle_id, nullptr, nullptr, &app_url); + CFArrayRef result = LSCopyApplicationURLsForBundleIdentifier(bundle_id, nullptr); CFRelease(bundle_id); - if (app_url) - CFRelease(app_url); - - switch (result) { - case noErr: + if (result) { + if (CFArrayGetCount(result) > 0) { + CFRelease(result); return true; - case kLSApplicationNotFoundErr: - break; - default: - break; + } else { + CFRelease(result); + return false; + } + } else { + return false; } - - return false; } #endif |