From 1a708fd73d10c2b7677dd4cc4e017746ebbb9166 Mon Sep 17 00:00:00 2001 From: Rob Woolley Date: Thu, 26 Jan 2017 10:17:11 -0800 Subject: [PATCH] Check for optional terminator in archives Archive files have an optional '/' terminator in the member file name field. (See /usr/include/ar.h) This change makes opkg-make-index more forgiving on packages created manually with alternative tools like CPack. Signed-off-by: Rob Woolley Signed-off-by: Alejandro del Castillo --- arfile.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/arfile.py b/arfile.py index 1c42bc7..6e04ec3 100644 --- a/arfile.py +++ b/arfile.py @@ -89,7 +89,11 @@ class ArFile(object): l = l[field_len:] # print(descriptor) size = int(descriptor[5]) - memberName = descriptor[0][:-1] + # Check for optional / terminator + if descriptor[0][-1] == "/": + memberName = descriptor[0][:-1] + else: + memberName = descriptor[0] self.directory[memberName] = descriptor + [self.f.tell()] # print(("read:", memberName)) if memberName == fname: