A few small fixes to make things like image list not
print "//mach_kernel" if you are debugging an executable
in the top level directory.

llvm-svn: 181190
diff --git a/lldb/source/Commands/CommandObjectTarget.cpp b/lldb/source/Commands/CommandObjectTarget.cpp
index 899db4c..522a482 100644
--- a/lldb/source/Commands/CommandObjectTarget.cpp
+++ b/lldb/source/Commands/CommandObjectTarget.cpp
@@ -1385,12 +1385,9 @@
     {
         if (width > 0)
         {
-            char fullpath[PATH_MAX];
-            if (file_spec_ptr->GetPath(fullpath, sizeof(fullpath)))
-            {
-                strm.Printf("%-*s", width, fullpath);
-                return;
-            }
+            std::string fullpath = file_spec_ptr->GetPath();
+            strm.Printf("%-*s", width, fullpath.c_str());
+            return;
         }
         else
         {
diff --git a/lldb/source/Host/common/FileSpec.cpp b/lldb/source/Host/common/FileSpec.cpp
index 82f5b34..3e56e5c 100644
--- a/lldb/source/Host/common/FileSpec.cpp
+++ b/lldb/source/Host/common/FileSpec.cpp
@@ -523,10 +523,11 @@
 void
 FileSpec::Dump(Stream *s) const
 {
+    static ConstString g_slash_only ("/");
     if (s)
     {
         m_directory.Dump(s);
-        if (m_directory)
+        if (m_directory && m_directory != g_slash_only)
             s->PutChar('/');
         m_filename.Dump(s);
     }
@@ -705,13 +706,14 @@
 std::string
 FileSpec::GetPath (void) const
 {
+    static ConstString g_slash_only ("/");
     std::string path;
     const char *dirname = m_directory.GetCString();
     const char *filename = m_filename.GetCString();
     if (dirname)
     {
         path.append (dirname);
-        if (filename)
+        if (filename && m_directory != g_slash_only)
             path.append ("/");
     }
     if (filename)