diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2015-07-15 22:46:53 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2015-07-15 22:46:53 +0000 |
commit | 0a74a60bc4a16e7c74c614642fa8c63d99a2772c (patch) | |
tree | 87c5c9be23af1ea533315a84238fdd36657a8ffd /llvm/tools/llvm-ar/llvm-ar.cpp | |
parent | e2d03448ba7944e8f983ddd95d50a20e9433777c (diff) | |
download | bcm5719-llvm-0a74a60bc4a16e7c74c614642fa8c63d99a2772c.tar.gz bcm5719-llvm-0a74a60bc4a16e7c74c614642fa8c63d99a2772c.zip |
For new archive member we only need to store the full path.
We were storing both the path and the file name, which was redundant
and easy to get confused up with.
llvm-svn: 242347
Diffstat (limited to 'llvm/tools/llvm-ar/llvm-ar.cpp')
-rw-r--r-- | llvm/tools/llvm-ar/llvm-ar.cpp | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/llvm/tools/llvm-ar/llvm-ar.cpp b/llvm/tools/llvm-ar/llvm-ar.cpp index 92f272dfad1..ec3cfcb5cad 100644 --- a/llvm/tools/llvm-ar/llvm-ar.cpp +++ b/llvm/tools/llvm-ar/llvm-ar.cpp @@ -437,8 +437,8 @@ static void performReadOperation(ArchiveOperation Operation, } void addMember(std::vector<NewArchiveIterator> &Members, StringRef FileName, - StringRef Name, int Pos = -1) { - NewArchiveIterator NI(FileName, Name); + int Pos = -1) { + NewArchiveIterator NI(FileName); if (Pos == -1) Members.push_back(NI); else @@ -544,7 +544,7 @@ computeNewArchiveMembers(ArchiveOperation Operation, addMember(Ret, Child, Name); break; case IA_AddNewMeber: - addMember(Ret, *MemberI, Name); + addMember(Ret, *MemberI); break; case IA_Delete: break; @@ -552,7 +552,7 @@ computeNewArchiveMembers(ArchiveOperation Operation, addMember(Moved, Child, Name); break; case IA_MoveNewMember: - addMember(Moved, *MemberI, Name); + addMember(Moved, *MemberI); break; } if (MemberI != Members.end()) @@ -572,12 +572,10 @@ computeNewArchiveMembers(ArchiveOperation Operation, assert(unsigned(InsertPos) <= Ret.size()); Ret.insert(Ret.begin() + InsertPos, Moved.begin(), Moved.end()); - Ret.insert(Ret.begin() + InsertPos, Members.size(), - NewArchiveIterator("", "")); + Ret.insert(Ret.begin() + InsertPos, Members.size(), NewArchiveIterator("")); int Pos = InsertPos; for (auto &Member : Members) { - StringRef Name = sys::path::filename(Member); - addMember(Ret, Member, Name, Pos); + addMember(Ret, Member, Pos); ++Pos; } @@ -736,7 +734,7 @@ static void runMRIScript() { break; } case MRICommand::AddMod: - addMember(NewMembers, Rest, sys::path::filename(Rest)); + addMember(NewMembers, Rest); break; case MRICommand::Create: Create = true; |