* libports/bucket-iterate.c (_ports_bucket_class_iterate): Unlock
_ports_lock on malloc failure.
---
libports/bucket-iterate.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/libports/bucket-iterate.c b/libports/bucket-iterate.c
index 498cf13..babc204 100644
--- a/libports/bucket-iterate.c
+++ b/libports/bucket-iterate.c
@@ -46,7 +46,10 @@ _ports_bucket_class_iterate (struct port_bucket *bucket,
nr_items = bucket->htable.nr_items;
p = malloc (nr_items * sizeof *p);
if (p == NULL)
- return ENOMEM;
+ {
+ pthread_mutex_unlock (&_ports_lock);
+ return ENOMEM;
+ }
n = 0;
HURD_IHASH_ITERATE (&bucket->htable, arg)
--
2.0.0.rc0