aboutsummaryrefslogtreecommitdiff
path: root/Driver/HTMLDiagnostics.cpp
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2008-04-24 23:37:03 +0000
committerTed Kremenek <kremenek@apple.com>2008-04-24 23:37:03 +0000
commit7fc89572d177ee491fa6209a474e65831b265520 (patch)
treeab9a7d1a5721b850e4202c633f52aa995a79814a /Driver/HTMLDiagnostics.cpp
parent846d4e923bf11bcdc2816758aafa331795f29230 (diff)
Better handling for directory names in HTML diagnostics. Work in progress.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@50234 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'Driver/HTMLDiagnostics.cpp')
-rw-r--r--Driver/HTMLDiagnostics.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/Driver/HTMLDiagnostics.cpp b/Driver/HTMLDiagnostics.cpp
index c850c05a58..3e3571c512 100644
--- a/Driver/HTMLDiagnostics.cpp
+++ b/Driver/HTMLDiagnostics.cpp
@@ -162,8 +162,14 @@ void HTMLDiagnostics::ReportDiag(const PathDiagnostic& D) {
const FileEntry* Entry = SMgr.getFileEntryForID(FileID);
std::string DirName(Entry->getDir()->getName());
+ // This is a cludge; basically we want to append either the full
+ // working directory if we have no directory information. This is
+ // a work in progress.
+
if (DirName == ".")
DirName = llvm::sys::Path::GetCurrentDirectory().toString();
+ else if (llvm::sys::Path(Entry->getName()).isAbsolute())
+ DirName = "";
// Add the name of the file as an <h1> tag.
@@ -200,7 +206,7 @@ void HTMLDiagnostics::ReportDiag(const PathDiagnostic& D) {
{
std::ostringstream os;
- os << "\n<!-- BUGFILE " << DirName << "/" << Entry->getName() << " -->\n";
+ os << "\n<!-- BUGFILE " << DirName << Entry->getName() << " -->\n";
R.InsertStrBefore(SourceLocation::getFileLoc(FileID, 0), os.str());
}