Revision: 9793 http://pure-data.svn.sourceforge.net/pure-data/?rev=9793&view=rev Author: eighthave Date: 2008-05-12 16:20:21 -0700 (Mon, 12 May 2008)
Log Message: ----------- patch #1962700 two embedded prefs for Mac: default and override all
Added Paths: ----------- trunk/packages/patches/default_and_embedded_plist-0.41.4.patch
Added: trunk/packages/patches/default_and_embedded_plist-0.41.4.patch =================================================================== --- trunk/packages/patches/default_and_embedded_plist-0.41.4.patch (rev 0) +++ trunk/packages/patches/default_and_embedded_plist-0.41.4.patch 2008-05-12 23:20:21 UTC (rev 9793) @@ -0,0 +1,50 @@ +Index: s_file.c +=================================================================== +--- s_file.c (revision 9789) ++++ s_file.c (working copy) +@@ -235,17 +235,35 @@ + { + char cmdbuf[256]; + int nread = 0, nleft = size; +- char embedded_prefs[MAXPDSTRING]; +- char user_prefs[MAXPDSTRING]; +- char *homedir = getenv("HOME"); ++ char default_prefs[MAXPDSTRING]; // default prefs embedded in the package ++ char embedded_prefs[MAXPDSTRING]; // overrides others for standalone app ++ char embedded_prefs_file[MAXPDSTRING]; ++ char user_prefs_file[MAXPDSTRING]; ++ char *homedir = getenv("HOME"); + struct stat statbuf; +- /* the 'defaults' command expects the filename without .plist at the end */ +- snprintf(embedded_prefs, MAXPDSTRING, "%s/../org.puredata.pd", sys_libdir->s_name); +- snprintf(user_prefs, MAXPDSTRING, "%s/Library/Preferences/org.puredata.pd.plist", homedir); +- if (stat(user_prefs, &statbuf) == 0) +- snprintf(cmdbuf, 256, "defaults read org.puredata.pd %s 2> /dev/null\n", key); +- else +- snprintf(cmdbuf, 256, "defaults read %s %s 2> /dev/null\n", embedded_prefs, key); ++ /* the 'defaults' command expects the filename without .plist at the end */ ++ snprintf(default_prefs, MAXPDSTRING, "%s/../org.puredata.pd.default", ++ sys_libdir->s_name); ++ snprintf(embedded_prefs, MAXPDSTRING, "%s/../org.puredata.pd", ++ sys_libdir->s_name); ++ snprintf(embedded_prefs_file, MAXPDSTRING, "%s.plist", embedded_prefs); ++ snprintf(user_prefs_file, MAXPDSTRING, ++ "%s/Library/Preferences/org.puredata.pd.plist", homedir); ++ if (stat(embedded_prefs_file, &statbuf) == 0) ++ { ++ snprintf(cmdbuf, 256, ++ "defaults read %s %s 2> /dev/null\n", embedded_prefs, key); ++ } ++ else if (stat(user_prefs_file, &statbuf) == 0) ++ { ++ snprintf(cmdbuf, 256, ++ "defaults read org.puredata.pd %s 2> /dev/null\n", key); ++ } ++ else ++ { ++ snprintf(cmdbuf, 256, ++ "defaults read %s %s 2> /dev/null\n", default_prefs, key); ++ } + FILE *fp = popen(cmdbuf, "r"); + while (nread < size) + {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.