summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormarcus <marcus@df743ca5-7f9a-e211-a948-0013205c9059>2005-07-02 14:24:44 +0800
committermarcus <marcus@df743ca5-7f9a-e211-a948-0013205c9059>2005-07-02 14:24:44 +0800
commitbe528d7b61ddfd166a8abc3f6c705fd090eaa55c (patch)
tree9c0157e5342be5200059c834adec720be4e970b1
parentb7a7056561d60008d47279f36c002304adf2c6d6 (diff)
downloadmarcuscom-ports-be528d7b61ddfd166a8abc3f6c705fd090eaa55c.tar
marcuscom-ports-be528d7b61ddfd166a8abc3f6c705fd090eaa55c.tar.gz
marcuscom-ports-be528d7b61ddfd166a8abc3f6c705fd090eaa55c.tar.bz2
marcuscom-ports-be528d7b61ddfd166a8abc3f6c705fd090eaa55c.tar.lz
marcuscom-ports-be528d7b61ddfd166a8abc3f6c705fd090eaa55c.tar.xz
marcuscom-ports-be528d7b61ddfd166a8abc3f6c705fd090eaa55c.tar.zst
marcuscom-ports-be528d7b61ddfd166a8abc3f6c705fd090eaa55c.zip
Fix some potential NULL pointer dereferences, and add support for finding
the process name by looking in /proc. This is a bit of a hack in that it requires /proc to be mounted. Hopefully, though, if it's not, g-k-m and g-k itself will no longer crash. git-svn-id: svn://creme-brulee.marcuscom.com/ports/trunk@4143 df743ca5-7f9a-e211-a948-0013205c9059
-rw-r--r--security/gnome-keyring-manager/Makefile4
-rw-r--r--security/gnome-keyring-manager/files/patch-src_gnome-keyring-manager-acl-display.c19
-rw-r--r--security/gnome-keyring-manager/files/patch-src_gnome-keyring-manager-util.c25
-rw-r--r--security/gnomekeyringmanager/Makefile4
-rw-r--r--security/gnomekeyringmanager/files/patch-src_gnome-keyring-manager-acl-display.c19
-rw-r--r--security/gnomekeyringmanager/files/patch-src_gnome-keyring-manager-util.c25
6 files changed, 78 insertions, 18 deletions
diff --git a/security/gnome-keyring-manager/Makefile b/security/gnome-keyring-manager/Makefile
index 790877539..0ebc04553 100644
--- a/security/gnome-keyring-manager/Makefile
+++ b/security/gnome-keyring-manager/Makefile
@@ -3,12 +3,12 @@
# Whom: Adam Weinberger <adamw@FreeBSD.org>
#
# $FreeBSD$
-# $MCom: ports/security/gnomekeyringmanager/Makefile,v 1.10 2005/06/29 01:10:22 marcus Exp $
+# $MCom: ports/security/gnomekeyringmanager/Makefile,v 1.11 2005/07/01 18:05:28 marcus Exp $
#
PORTNAME= gnomekeyringmanager
PORTVERSION= 2.11.1
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= security gnome
MASTER_SITES= ${MASTER_SITE_GNOME}
MASTER_SITE_SUBDIR= sources/gnome-keyring-manager/2.11
diff --git a/security/gnome-keyring-manager/files/patch-src_gnome-keyring-manager-acl-display.c b/security/gnome-keyring-manager/files/patch-src_gnome-keyring-manager-acl-display.c
new file mode 100644
index 000000000..3df8081ba
--- /dev/null
+++ b/security/gnome-keyring-manager/files/patch-src_gnome-keyring-manager-acl-display.c
@@ -0,0 +1,19 @@
+--- src/gnome-keyring-manager-acl-display.c.orig Sat Jul 2 02:12:49 2005
++++ src/gnome-keyring-manager-acl-display.c Sat Jul 2 02:16:31 2005
+@@ -393,13 +393,15 @@ gkm_acl_display_set_acl (GKMAclDisplay *
+ GnomeKeyringAccessType at;
+ GtkTreeIter iter;
+ char *name, *path;
++ const char *app_path;
+
+ ac = (GnomeKeyringAccessControl*) tmp->data;
+ name = gnome_keyring_item_ac_get_display_name (ac);
+ path = gnome_keyring_item_ac_get_path_name (ac);
++ app_path = gkm_get_application_path ();
+
+ /* We don't want to include ourself in the list. */
+- if (g_str_equal (path, gkm_get_application_path ()))
++ if (app_path && g_str_equal (path, app_path))
+ {
+ self->priv->gkm_ac = gnome_keyring_access_control_copy (ac);
+ }
diff --git a/security/gnome-keyring-manager/files/patch-src_gnome-keyring-manager-util.c b/security/gnome-keyring-manager/files/patch-src_gnome-keyring-manager-util.c
index 572e57e9f..c05c11acf 100644
--- a/security/gnome-keyring-manager/files/patch-src_gnome-keyring-manager-util.c
+++ b/security/gnome-keyring-manager/files/patch-src_gnome-keyring-manager-util.c
@@ -1,6 +1,6 @@
---- src/gnome-keyring-manager-util.c.orig Thu Mar 31 14:27:56 2005
-+++ src/gnome-keyring-manager-util.c Thu Mar 31 14:28:26 2005
-@@ -276,8 +276,6 @@ gkm_about_dialog_new (GtkWindow *transie
+--- src/gnome-keyring-manager-util.c.orig Wed May 18 16:41:35 2005
++++ src/gnome-keyring-manager-util.c Sat Jul 2 02:12:38 2005
+@@ -304,8 +304,6 @@ gkm_about_dialog_new (GtkWindow *transie
{
GtkWidget *about;
@@ -9,12 +9,23 @@
const char *authors[] = {
"Fernando Herrera <fherrera@onirica.com>",
"Mariano Su\303\241rez-Alvarez <mariano@gnome.org>",
-@@ -288,6 +286,8 @@ gkm_about_dialog_new (GtkWindow *transie
- const char *documenters[] = {
+@@ -317,6 +315,8 @@ gkm_about_dialog_new (GtkWindow *transie
NULL
};
-+
-+ g_return_val_if_fail (GTK_IS_WINDOW (transient_parent), NULL);
++ g_return_val_if_fail (GTK_IS_WINDOW (transient_parent), NULL);
++
gtk_about_dialog_set_email_hook ((GtkAboutDialogActivateLinkFunc) gkm_about_dialog_activate_links,
GINT_TO_POINTER (LINK_TYPE_EMAIL), NULL);
+
+@@ -354,6 +354,10 @@ gkm_get_application_path (void)
+ {
+ path = g_file_read_link ("/proc/self/exe", NULL);
+ }
++#elif defined(__FreeBSD__)
++ {
++ path = g_file_read_link ("/proc/curproc/file", NULL);
++ }
+ #endif
+ }
+
diff --git a/security/gnomekeyringmanager/Makefile b/security/gnomekeyringmanager/Makefile
index 790877539..0ebc04553 100644
--- a/security/gnomekeyringmanager/Makefile
+++ b/security/gnomekeyringmanager/Makefile
@@ -3,12 +3,12 @@
# Whom: Adam Weinberger <adamw@FreeBSD.org>
#
# $FreeBSD$
-# $MCom: ports/security/gnomekeyringmanager/Makefile,v 1.10 2005/06/29 01:10:22 marcus Exp $
+# $MCom: ports/security/gnomekeyringmanager/Makefile,v 1.11 2005/07/01 18:05:28 marcus Exp $
#
PORTNAME= gnomekeyringmanager
PORTVERSION= 2.11.1
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= security gnome
MASTER_SITES= ${MASTER_SITE_GNOME}
MASTER_SITE_SUBDIR= sources/gnome-keyring-manager/2.11
diff --git a/security/gnomekeyringmanager/files/patch-src_gnome-keyring-manager-acl-display.c b/security/gnomekeyringmanager/files/patch-src_gnome-keyring-manager-acl-display.c
new file mode 100644
index 000000000..3df8081ba
--- /dev/null
+++ b/security/gnomekeyringmanager/files/patch-src_gnome-keyring-manager-acl-display.c
@@ -0,0 +1,19 @@
+--- src/gnome-keyring-manager-acl-display.c.orig Sat Jul 2 02:12:49 2005
++++ src/gnome-keyring-manager-acl-display.c Sat Jul 2 02:16:31 2005
+@@ -393,13 +393,15 @@ gkm_acl_display_set_acl (GKMAclDisplay *
+ GnomeKeyringAccessType at;
+ GtkTreeIter iter;
+ char *name, *path;
++ const char *app_path;
+
+ ac = (GnomeKeyringAccessControl*) tmp->data;
+ name = gnome_keyring_item_ac_get_display_name (ac);
+ path = gnome_keyring_item_ac_get_path_name (ac);
++ app_path = gkm_get_application_path ();
+
+ /* We don't want to include ourself in the list. */
+- if (g_str_equal (path, gkm_get_application_path ()))
++ if (app_path && g_str_equal (path, app_path))
+ {
+ self->priv->gkm_ac = gnome_keyring_access_control_copy (ac);
+ }
diff --git a/security/gnomekeyringmanager/files/patch-src_gnome-keyring-manager-util.c b/security/gnomekeyringmanager/files/patch-src_gnome-keyring-manager-util.c
index 572e57e9f..c05c11acf 100644
--- a/security/gnomekeyringmanager/files/patch-src_gnome-keyring-manager-util.c
+++ b/security/gnomekeyringmanager/files/patch-src_gnome-keyring-manager-util.c
@@ -1,6 +1,6 @@
---- src/gnome-keyring-manager-util.c.orig Thu Mar 31 14:27:56 2005
-+++ src/gnome-keyring-manager-util.c Thu Mar 31 14:28:26 2005
-@@ -276,8 +276,6 @@ gkm_about_dialog_new (GtkWindow *transie
+--- src/gnome-keyring-manager-util.c.orig Wed May 18 16:41:35 2005
++++ src/gnome-keyring-manager-util.c Sat Jul 2 02:12:38 2005
+@@ -304,8 +304,6 @@ gkm_about_dialog_new (GtkWindow *transie
{
GtkWidget *about;
@@ -9,12 +9,23 @@
const char *authors[] = {
"Fernando Herrera <fherrera@onirica.com>",
"Mariano Su\303\241rez-Alvarez <mariano@gnome.org>",
-@@ -288,6 +286,8 @@ gkm_about_dialog_new (GtkWindow *transie
- const char *documenters[] = {
+@@ -317,6 +315,8 @@ gkm_about_dialog_new (GtkWindow *transie
NULL
};
-+
-+ g_return_val_if_fail (GTK_IS_WINDOW (transient_parent), NULL);
++ g_return_val_if_fail (GTK_IS_WINDOW (transient_parent), NULL);
++
gtk_about_dialog_set_email_hook ((GtkAboutDialogActivateLinkFunc) gkm_about_dialog_activate_links,
GINT_TO_POINTER (LINK_TYPE_EMAIL), NULL);
+
+@@ -354,6 +354,10 @@ gkm_get_application_path (void)
+ {
+ path = g_file_read_link ("/proc/self/exe", NULL);
+ }
++#elif defined(__FreeBSD__)
++ {
++ path = g_file_read_link ("/proc/curproc/file", NULL);
++ }
+ #endif
+ }
+