Revision: 10014 http://pure-data.svn.sourceforge.net/pure-data/?rev=10014&view=rev Author: eighthave Date: 2008-06-17 09:25:57 -0700 (Tue, 17 Jun 2008)
Log Message: ----------- save to embedded preferences file on Mac OS X if the app is currently using them
Modified Paths: -------------- branches/pd-extended/v0-40/pd/src/s_file.c
Modified: branches/pd-extended/v0-40/pd/src/s_file.c =================================================================== --- branches/pd-extended/v0-40/pd/src/s_file.c 2008-06-17 16:03:47 UTC (rev 10013) +++ branches/pd-extended/v0-40/pd/src/s_file.c 2008-06-17 16:25:57 UTC (rev 10014) @@ -227,6 +227,9 @@
#ifdef __APPLE__
+// prefs file that is currently the one to save to +static char current_prefs[FILENAME_MAX] = "org.puredata.pd"; + static void sys_initloadpreferences( void) { } @@ -251,18 +254,21 @@ "%s/Library/Preferences/org.puredata.pd.plist", homedir); if (stat(embedded_prefs_file, &statbuf) == 0) { - snprintf(cmdbuf, 256, + snprintf(cmdbuf, FILENAME_MAX + 20, "defaults read %s %s 2> /dev/null\n", embedded_prefs, key); + strncpy(current_prefs, embedded_prefs, FILENAME_MAX); } else if (stat(user_prefs_file, &statbuf) == 0) { - snprintf(cmdbuf, 256, + snprintf(cmdbuf, FILENAME_MAX + 20, "defaults read org.puredata.pd %s 2> /dev/null\n", key); + strcpy(current_prefs, "org.puredata.pd"); } else { - snprintf(cmdbuf, 256, + snprintf(cmdbuf, FILENAME_MAX + 20, "defaults read %s %s 2> /dev/null\n", default_prefs, key); + strcpy(current_prefs, "org.puredata.pd"); } FILE *fp = popen(cmdbuf, "r"); while (nread < size) @@ -295,7 +301,8 @@ { char cmdbuf[MAXPDSTRING]; snprintf(cmdbuf, MAXPDSTRING, - "defaults write org.puredata.pd %s "%s" 2> /dev/null\n", key, value); + "defaults write %s %s "%s" 2> /dev/null\n", + current_prefs, key, value); system(cmdbuf); }
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.