* 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