Resolve source paths that start with ~ when doing substitutions.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@160158 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/source/Host/macosx/Symbols.cpp b/source/Host/macosx/Symbols.cpp
index bc93771..debd85d 100644
--- a/source/Host/macosx/Symbols.cpp
+++ b/source/Host/macosx/Symbols.cpp
@@ -388,6 +388,11 @@
                                     char build_src_path[PATH_MAX];
                                     ::CFStringGetFileSystemRepresentation (actual_src_cfpath, actual_src_path, sizeof(actual_src_path));
                                     ::CFStringGetFileSystemRepresentation (build_src_cfpath, build_src_path, sizeof(build_src_path));
+                                    if (actual_src_path[0] == '~')
+                                    {
+                                        FileSpec resolved_source_path(actual_src_path, true);
+                                        resolved_source_path.GetPath(actual_src_path, sizeof(actual_src_path));
+                                    }
                                     module_spec.GetSourceMappingList().Append (ConstString(build_src_path), ConstString(actual_src_path), true);
                                 }
                             }