Index: uspace/lib/c/generic/loc.c
===================================================================
--- uspace/lib/c/generic/loc.c	(revision ec506d49cc23064164b13e117ffb756c67088934)
+++ uspace/lib/c/generic/loc.c	(revision a25b496f86a435afbce274e65e87af2c6491a35d)
@@ -819,7 +819,10 @@
 
 		alloc_size = act_size;
-		ids = realloc(ids, alloc_size);
-		if (ids == NULL)
+		service_id_t *tmp = realloc(ids, alloc_size);
+		if (tmp == NULL) {
+			free(ids);
 			return ENOMEM;
+		}
+		ids = tmp;
 	}
 
