summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/kim/lib/mac/kim_os_library.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/kim/lib/mac/kim_os_library.c b/src/kim/lib/mac/kim_os_library.c
index b0781bbf2..63edfde32 100644
--- a/src/kim/lib/mac/kim_os_library.c
+++ b/src/kim/lib/mac/kim_os_library.c
@@ -233,14 +233,17 @@ kim_error kim_os_library_get_caller_name (kim_string *out_application_name)
if (!err && !out_application_name) { err = check_error (KIM_NULL_PARAMETER_ERR); }
if (!err && bundle) {
- CFURLRef bundle_url = CFBundleCopyBundleURL (bundle);
+ cfname = CFBundleGetValueForInfoDictionaryKey (bundle,
+ kCFBundleNameKey);
- if (bundle_url) {
- err = LSCopyDisplayNameForURL (bundle_url, &cfname);
- check_error (err);
+ if (!cfname || CFGetTypeID (cfname) != CFStringGetTypeID ()) {
+ cfname = CFBundleGetValueForInfoDictionaryKey (bundle,
+ kCFBundleExecutableKey);
}
- if (bundle_url) { CFRelease (bundle_url); }
+ if (cfname) {
+ cfname = CFStringCreateCopy (kCFAllocatorDefault, cfname);
+ }
}
if (!err && !cfname) {