summaryrefslogtreecommitdiffstatshomepage
path: root/src/lib/portmidi/osxsupport.m
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/portmidi/osxsupport.m')
-rw-r--r--src/lib/portmidi/osxsupport.m30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/lib/portmidi/osxsupport.m b/src/lib/portmidi/osxsupport.m
new file mode 100644
index 00000000000..cb182870865
--- /dev/null
+++ b/src/lib/portmidi/osxsupport.m
@@ -0,0 +1,30 @@
+/*
+ osxsupport.m - Cocoa glue to emulated deprecated old Carbon path finder functions
+*/
+
+#import <Cocoa/Cocoa.h>
+#import <AvailabilityMacros.h>
+#include "osxsupport.h"
+
+// convert an NSString to a C string
+static char *StringToChar(NSString *str)
+{
+ const char *charstr = [str UTF8String];
+ char *resstr = (char *)malloc(strlen(charstr)+1);
+
+ strcpy(resstr, charstr);
+ return resstr;
+}
+
+char *FindPrefsDir(void)
+{
+ char *resstr = NULL;
+ NSArray *paths = NSSearchPathForDirectoriesInDomains(NSPreferencePanesDirectory, NSUserDomainMask, YES);
+
+ if ([paths count] > 0)
+ {
+ resstr = StringToChar([paths objectAtIndex:0]) ;
+ }
+
+ return resstr;
+}