diff options
author | Marco Pesenti Gritti <marco@localhost.localdomain> | 2008-06-15 02:34:54 (GMT) |
---|---|---|
committer | Marco Pesenti Gritti <marco@localhost.localdomain> | 2008-06-15 02:34:54 (GMT) |
commit | 20f9a0fcd51e5edc7ea5c66fb655cd028319100d (patch) | |
tree | 45f4cd39138a52699982c90d80fa7105cd6b5c6c /src | |
parent | 5818437129222cb7a348f8a948e6b82a6bc5dc1d (diff) |
Add support for adding certificate exceptions. Same UI as firefox.
Diffstat (limited to 'src')
-rw-r--r-- | src/HulahopDirectoryProvider.cpp | 26 | ||||
-rw-r--r-- | src/Makefile.am | 3 | ||||
-rw-r--r-- | src/hulahop.cpp | 6 |
3 files changed, 31 insertions, 4 deletions
diff --git a/src/HulahopDirectoryProvider.cpp b/src/HulahopDirectoryProvider.cpp index 1162dbb..fb21d69 100644 --- a/src/HulahopDirectoryProvider.cpp +++ b/src/HulahopDirectoryProvider.cpp @@ -21,6 +21,10 @@ #include <nsAppDirectoryServiceDefs.h> #include <nsDirectoryServiceDefs.h> #include <nsArrayEnumerator.h> +#include <nsIToolkitChromeRegistry.h> +#include <nsNetUtil.h> +#include <nsISupportsArray.h> +#include <nsIMutableArray.h> #include "HulahopDirectoryProvider.h" @@ -84,7 +88,27 @@ HulahopDirectoryProvider::GetFiles(const char *aKey, if (!strcmp(aKey, NS_XPCOM_COMPONENT_DIR_LIST)) { rv = NS_NewArrayEnumerator(aResult, mComponentsDirs); - } + } else if (!strcmp(aKey, NS_CHROME_MANIFESTS_FILE_LIST)) { + nsCOMPtr<nsILocalFile> manifestDir; + rv = NS_NewNativeLocalFile (nsDependentCString(DATA_DIR "/chrome"), PR_TRUE, + getter_AddRefs (manifestDir)); + NS_ENSURE_SUCCESS (rv, rv); + + nsCOMPtr<nsISupports> element (do_QueryInterface (manifestDir, &rv)); + NS_ENSURE_SUCCESS (rv, rv); + + nsCOMPtr<nsIMutableArray> array (do_CreateInstance(NS_ARRAY_CONTRACTID)); + if(!array) + return NS_ERROR_OUT_OF_MEMORY; + rv = array->AppendElement (manifestDir, PR_FALSE); + NS_ENSURE_SUCCESS (rv, rv); + + rv = array->Enumerate(aResult); + + NS_ENSURE_SUCCESS (rv, rv); + + rv = NS_SUCCESS_AGGREGATE_RESULT; + } return rv; } diff --git a/src/Makefile.am b/src/Makefile.am index 6cd5d59..573239e 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -4,7 +4,8 @@ INCLUDES = \ $(LIBXUL_CFLAGS) \ -DPLUGIN_PATH=\"$(libdir)/mozilla/plugins\" \ -DLIBXUL_DIR=\"$(LIBXUL_DIR)\" \ - -DDATA_DIR=\"$(pkgdatadir)\" + -DDATA_DIR=\"$(pkgdatadir)\" \ + -DLIB_DIR=\"$(pkglibdir)\" noinst_LTLIBRARIES = libhulahop.la diff --git a/src/hulahop.cpp b/src/hulahop.cpp index dbe9497..8d90c6f 100644 --- a/src/hulahop.cpp +++ b/src/hulahop.cpp @@ -48,6 +48,8 @@ hulahop_startup() setup_plugin_path(); + hulahop_add_components_path(LIB_DIR"/components"); + nsCOMPtr<nsILocalFile> greDir; rv = NS_NewNativeLocalFile(nsCString(LIBXUL_DIR), PR_TRUE, getter_AddRefs(greDir)); @@ -61,8 +63,8 @@ hulahop_startup() rv = XRE_InitEmbedding(greDir, binDir, const_cast<HulahopDirectoryProvider *> (&kDirectoryProvider), nsnull, 0); - NS_ENSURE_SUCCESS(rv, FALSE); - + NS_ENSURE_SUCCESS(rv, FALSE); + XRE_NotifyProfile(); return TRUE; |