summaryrefslogtreecommitdiff
path: root/pith/osdep
diff options
context:
space:
mode:
Diffstat (limited to 'pith/osdep')
-rw-r--r--pith/osdep/mimedisp.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/pith/osdep/mimedisp.c b/pith/osdep/mimedisp.c
index 2ee99293..7917a716 100644
--- a/pith/osdep/mimedisp.c
+++ b/pith/osdep/mimedisp.c
@@ -412,12 +412,21 @@ osx_build_mime_type_cmd(mime_type, cmd, cmdlen, sp_hndlp)
CFStringRef str_ref = NULL, ret_str_ref = NULL;
CFURLRef url_ref = NULL;
+#ifdef AVAILABLE_MAC_OS_X_VERSION_10_10_AND_LATER
+ if(&LSCopyDefaultApplicationURLForContentType == NULL)
+ return 0;
+#else
if(&LSCopyApplicationForMIMEType == NULL)
return 0;
+#endif
if((str_ref = CFStringCreateWithCString(NULL, mime_type,
kCFStringEncodingASCII)) == NULL)
return 0;
+#ifdef AVAILABLE_MAC_OS_X_VERSION_10_10_AND_LATER
+ if(LSCopyDefaultApplicationURLForContentType(str_ref, kLSRolesAll, &url_ref)
+#else
if(LSCopyApplicationForMIMEType(str_ref, kLSRolesAll, &url_ref)
+#endif
!= kLSApplicationNotFoundErr){
if((ret_str_ref = CFURLGetString(url_ref)) == NULL)
return 0;
@@ -454,8 +463,13 @@ osx_build_mime_ext_cmd(mime_ext, cmd, cmdlen, sp_hndlp)
? mime_ext+1 : mime_ext,
kCFStringEncodingASCII)) == NULL)
return 0;
+#ifdef AVAILABLE_MAC_OS_X_VERSION_10_10_AND_LATER
+ if(LSCopyDefaultApplicationURLForContentType(str_ref,
+ kLSRolesAll, &url_ref)
+#else
if(LSGetApplicationForInfo(kLSUnknownType, kLSUnknownCreator,
str_ref, kLSRolesAll, NULL, &url_ref)
+#endif
!= kLSApplicationNotFoundErr){
if((ret_str_ref = CFURLGetString(url_ref)) == NULL)
return 0;