+ // Get name of archive member.
+ char *startp = Hdr->name;
+ char *endp = strchr (startp, '/');
+ if (startp == endp && isdigit (Hdr->name[1])) {
+ // Long filenames are abbreviated as "/I", where I is a decimal
+ // index into the LongFilenames vector.
+ unsigned Index = atoi (&Hdr->name[1]);
+ assert (LongFilenames.size () > Index
+ && "Long filename for archive member not found");
+ startp = &LongFilenames[Index];
+ endp = strchr (startp, '/');
+ }
+ std::string MemberName (startp, endp);
+ std::string FullMemberName = ArchiveName + "(" + MemberName + ")";
+