diff --git a/mozilla/modules/libpref/src/nsPref.cpp b/mozilla/modules/libpref/src/nsPref.cpp index 8247a9f2d55..5553dba8cbe 100644 --- a/mozilla/modules/libpref/src/nsPref.cpp +++ b/mozilla/modules/libpref/src/nsPref.cpp @@ -28,6 +28,10 @@ #include "nsIServiceManager.h" #include "nsCOMPtr.h" +#ifdef PREF_USE_SYSDIR +#include "nsSpecialSystemDirectory.h" // For exe dir +#endif /* PREF_USE_SYSDIR */ + static NS_DEFINE_IID(kIPrefIID, NS_IPREF_IID); static NS_DEFINE_CID(kPrefCID, NS_PREF_CID); @@ -198,7 +202,19 @@ nsPref::useDefaultPrefFile(nsPref *aPrefInst) if (!aPrefInst) return; +#ifdef PREF_USE_SYSDIR + nsSpecialSystemDirectory sysDir(nsSpecialSystemDirectory::OS_CurrentProcessDirectory); + sysDir += "prefs.js"; + nsFilePath prefPath(sysDir); + /* incomplete */ +#endif /* PREF_USE_SYSDIR */ + + +#ifdef XP_UNIX + aPrefInst->Startup("preferences.js"); +#else /* all others XP_WIN && XP_MAC */ aPrefInst->Startup("prefs.js"); +#endif return; } diff --git a/mozilla/modules/libpref/src/prefapi.c b/mozilla/modules/libpref/src/prefapi.c index ee51d4d2ae5..066e97cd5d8 100644 --- a/mozilla/modules/libpref/src/prefapi.c +++ b/mozilla/modules/libpref/src/prefapi.c @@ -957,7 +957,11 @@ pref_CompareStrings (const void *v1, const void *v2) PR_IMPLEMENT(PRBool) pref_useDefaultPrefFile(void) { +#ifdef XP_UNIX + return PREF_Init("preferences.js"); +#else /* all others XP_WIN && XP_MAC */ return PREF_Init("prefs.js"); +#endif } diff --git a/mozilla/modules/libpref/src/prefapi.cpp b/mozilla/modules/libpref/src/prefapi.cpp index ee51d4d2ae5..066e97cd5d8 100644 --- a/mozilla/modules/libpref/src/prefapi.cpp +++ b/mozilla/modules/libpref/src/prefapi.cpp @@ -957,7 +957,11 @@ pref_CompareStrings (const void *v1, const void *v2) PR_IMPLEMENT(PRBool) pref_useDefaultPrefFile(void) { +#ifdef XP_UNIX + return PREF_Init("preferences.js"); +#else /* all others XP_WIN && XP_MAC */ return PREF_Init("prefs.js"); +#endif }