diff --git a/llvm/lib/Bytecode/Archive/ArchiveReader.cpp b/llvm/lib/Bytecode/Archive/ArchiveReader.cpp
index 794e1b2..7f85894 100644
--- a/llvm/lib/Bytecode/Archive/ArchiveReader.cpp
+++ b/llvm/lib/Bytecode/Archive/ArchiveReader.cpp
@@ -309,18 +309,25 @@
   if (mbr->isForeignSymbolTable()) {
     // Skip the foreign symbol table, we don't do anything with it
     At += mbr->getSize();
+    if (mbr->getSize() % 2 != 0)
+      At++;
     delete mbr;
 
-    // See if there's a string table too
+    // Read the next one
     FirstFile = At;
     mbr = parseMemberHeader(At,End);
-    if (mbr->isStringTable()) {
-      strtab.assign((const char*)mbr->getData(),mbr->getSize());
-      At += mbr->getSize();
-      delete mbr;
-      FirstFile = At;
-      mbr = parseMemberHeader(At,End);
-    }
+  }
+
+  if (mbr->isStringTable()) {
+    // Process the string table entry
+    strtab.assign((const char*)mbr->getData(),mbr->getSize());
+    At += mbr->getSize();
+    if (mbr->getSize() % 2 != 0)
+      At++;
+    delete mbr;
+    // Get the next one
+    FirstFile = At;
+    mbr = parseMemberHeader(At,End);
   }
 
   // See if its the symbol table
@@ -432,6 +439,11 @@
             mbr->getPath().get();
         }
       }
+
+      // Go to the next file location
+      At += mbr->getSize();
+      if (mbr->getSize() % 2 != 0)
+        At++;
     }
   }
 
