diff options
Diffstat (limited to 'browser/sugar-browser.cpp')
-rw-r--r-- | browser/sugar-browser.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/browser/sugar-browser.cpp b/browser/sugar-browser.cpp index d64224f..d5644da 100644 --- a/browser/sugar-browser.cpp +++ b/browser/sugar-browser.cpp @@ -159,13 +159,23 @@ sugar_browser_startup(const char *profile_path, const char *profile_name) old_handler = XSetErrorHandler(error_handler); + const char *prefix = g_getenv("SUGAR_PREFIX"); + if (prefix == NULL) { + g_print("The SUGAR_PREFIX environment variable is not set."); + exit(1); + } + + char *components_path = g_build_filename(prefix, "share/sugar", NULL); + GeckoDirectoryProvider *dirProvider = - new GeckoDirectoryProvider(g_getenv(SUGAR_PATH)); + new GeckoDirectoryProvider(components_path); if (!dirProvider) { g_warning ("failed to create GeckoDirectoryProvider"); return FALSE; } + g_free(components_path); + NS_ADDREF (dirProvider); nsCOMPtr<nsIDirectoryServiceProvider> dp (do_QueryInterface (dirProvider)); |