Change the MemoryBuffer::getFile* methods to take just a pointer to the
start of a filename, not a filename+length.  All clients can produce a
null terminated name, and the system api's require null terminated 
strings anyway.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49041 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Linker/Linker.cpp b/lib/Linker/Linker.cpp
index 64327e1..ef242e5 100644
--- a/lib/Linker/Linker.cpp
+++ b/lib/Linker/Linker.cpp
@@ -19,7 +19,8 @@
 #include "llvm/Support/Streams.h"
 using namespace llvm;
 
-Linker::Linker(const std::string& progname, const std::string& modname, unsigned flags)
+Linker::Linker(const std::string& progname, const std::string& modname,
+               unsigned flags)
   : Composite(0)
   , LibPaths()
   , Flags(flags)
@@ -103,8 +104,7 @@
   Module *Result = 0;
   
   const std::string &FNS = FN.toString();
-  std::auto_ptr<MemoryBuffer> Buffer(
-                          MemoryBuffer::getFileOrSTDIN(&FNS[0], FNS.size()));
+  std::auto_ptr<MemoryBuffer> Buffer(MemoryBuffer::getFileOrSTDIN(FNS.c_str()));
   if (Buffer.get())
     Result = ParseBitcodeFile(Buffer.get(), &ParseErrorMessage);
   else