diff options
author | Marco Pesenti Gritti <marco@localhost.localdomain> | 2007-05-15 09:50:21 (GMT) |
---|---|---|
committer | Marco Pesenti Gritti <marco@localhost.localdomain> | 2007-05-15 09:50:21 (GMT) |
commit | 4a8493f95e4df95cfbdb0705c146342f4b8cab58 (patch) | |
tree | 0da16771645aa3fdf6e2ba32ba1ce14eec694383 /browser | |
parent | 9fa0790c2be829bcd652a49ed9c6e52989dcbfe7 (diff) |
Fix mozilla components loading when sugar is running from source.
We don't attempt to load components from source, since that would
be insanely complicated.
Diffstat (limited to 'browser')
-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)); |