libsel4utils: Fix alloc leak in elf loading

This elfloading implementation guarantees that it doesn't leave
allocations behind in the loader allocators even if it fails. Fix area
where this doesn't occur.

Signed-off-by: Kent McLeod <kent@kry10.com>
diff --git a/libsel4utils/src/elf.c b/libsel4utils/src/elf.c
index 7bc2f5d..ab2570a 100644
--- a/libsel4utils/src/elf.c
+++ b/libsel4utils/src/elf.c
@@ -67,14 +67,16 @@
             //  Have to use reservation from adjacent region
             if ((region_index - 1) < 0) {
                 ZF_LOGE("Invalid regions: bad elf file.");
-                return 1;
+                error = seL4_InvalidArgument;
+                continue;
             }
             reservation = regions[region_index - 1].reservation;
         } else if (loadee_vaddr + (MIN(segment_size - pos, PAGE_SIZE_4K)) >
                    (region.reservation_vstart + region.reservation_size)) {
             if ((region_index + 1) >= num_regions) {
                 ZF_LOGE("Invalid regions: bad elf file.");
-                return 1;
+                error = seL4_InvalidArgument;
+                continue;
             }
             reservation = regions[region_index + 1].reservation;
         } else {