From 33026692441b7e0fa801bd400fe939d40e79f89b Mon Sep 17 00:00:00 2001 From: Alberto Villa Date: Mon, 14 Oct 2013 13:41:51 +0000 Subject: [PATCH] - Remove disk duplicate entries on FreeBSD 10+. - Bump PORTREVISION. PR: 179469 Submitted by: avilla (myself) Approved by: gnome (maintainer timeout) --- sysutils/hal/Makefile | 2 +- sysutils/hal/files/patch-hald_hf-storage.c | 23 ++++++++++++++++------ 2 files changed, 18 insertions(+), 7 deletions(-) diff --git a/sysutils/hal/Makefile b/sysutils/hal/Makefile index 8bd21ccb4548..9fc087ceac36 100644 --- a/sysutils/hal/Makefile +++ b/sysutils/hal/Makefile @@ -4,7 +4,7 @@ PORTNAME= hal DISTVERSION= 0.5.14 -PORTREVISION= 20 +PORTREVISION= 21 CATEGORIES= sysutils MASTER_SITES= http://hal.freedesktop.org/releases/ diff --git a/sysutils/hal/files/patch-hald_hf-storage.c b/sysutils/hal/files/patch-hald_hf-storage.c index e2fedeed9406..c16ea629af42 100644 --- a/sysutils/hal/files/patch-hald_hf-storage.c +++ b/sysutils/hal/files/patch-hald_hf-storage.c @@ -1,5 +1,5 @@ ---- hald/freebsd/hf-storage.c.orig 2009-08-24 08:42:29.000000000 -0400 -+++ hald/freebsd/hf-storage.c 2011-07-20 20:52:51.000000000 -0400 +--- ./hald/freebsd/hf-storage.c.orig 2009-08-24 14:42:29.000000000 +0200 ++++ ./hald/freebsd/hf-storage.c 2013-06-10 16:22:36.080280935 +0200 @@ -30,6 +30,7 @@ #include #include @@ -8,7 +8,18 @@ #include #include #include -@@ -418,10 +419,41 @@ hf_storage_parse_conftxt (const char *co +@@ -174,6 +175,10 @@ hf_storage_device_probe_geom (HalDevice + if (! geom_obj) + return; + ++ /* Exclude /dev/diskid/ labels as they are duplicates. */ ++ if (strncmp(geom_obj->dev, "diskid/", 7) == 0) ++ return; ++ + node = g_node_find(hf_storage_geom_tree, G_PRE_ORDER, G_TRAVERSE_ALL, + GUINT_TO_POINTER(geom_obj->hash)); + +@@ -418,10 +423,41 @@ hf_storage_parse_conftxt (const char *co continue; } @@ -50,7 +61,7 @@ geom_obj->type = -1; /* We use -1 here to denote a missing type. */ geom_obj->hash = hash; -@@ -458,6 +490,13 @@ hf_storage_parse_conftxt (const char *co +@@ -458,6 +494,13 @@ hf_storage_parse_conftxt (const char *co { g_free(geom_obj->class); geom_obj->class = g_strdup(fields[12]); @@ -64,7 +75,7 @@ } } } -@@ -589,11 +628,18 @@ hf_storage_devd_notify (const char *syst +@@ -589,11 +632,18 @@ hf_storage_devd_notify (const char *syst char *conftxt; GSList *new_disks; @@ -84,7 +95,7 @@ new_disks = hf_storage_parse_conftxt(conftxt); g_free(conftxt); -@@ -669,7 +715,7 @@ hf_storage_conftxt_timeout_cb (gpointer +@@ -669,7 +719,7 @@ hf_storage_conftxt_timeout_cb (gpointer if (hf_is_waiting) return TRUE;