diff --git a/usr.bin/ar/read.c b/usr.bin/ar/read.c index e595869e4df0..ed7a94a67685 100644 --- a/usr.bin/ar/read.c +++ b/usr.bin/ar/read.c @@ -102,7 +102,8 @@ read_archive(struct bsdar *bsdar, char mode) continue; } - name = archive_entry_pathname(entry); + if ((name = archive_entry_pathname(entry)) == NULL) + break; /* Skip pseudo members. */ if (strcmp(name, "/") == 0 || strcmp(name, "//") == 0)