summaryrefslogtreecommitdiffstats
path: root/src/dot.cpp
diff options
context:
space:
mode:
authoralbert-github <albert.tests@gmail.com>2017-09-28 17:24:31 (GMT)
committeralbert-github <albert.tests@gmail.com>2017-09-28 17:24:31 (GMT)
commit97bfbfa6c4d4eb07ac8c60545086c3370e9683b8 (patch)
treeb2e84f2dad86974d1279add4cb560bd9d77691ad /src/dot.cpp
parent3aa86cee3f38627f0ee4d0aaac313f8221999819 (diff)
downloadDoxygen-97bfbfa6c4d4eb07ac8c60545086c3370e9683b8.zip
Doxygen-97bfbfa6c4d4eb07ac8c60545086c3370e9683b8.tar.gz
Doxygen-97bfbfa6c4d4eb07ac8c60545086c3370e9683b8.tar.bz2
Bug 743367 - Duplicate attribute (target="_top" target="_top") generated in .SVG files
prevent to write multiple target attributes in one tag.
Diffstat (limited to 'src/dot.cpp')
-rw-r--r--src/dot.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/dot.cpp b/src/dot.cpp
index 627989f..db77b18 100644
--- a/src/dot.cpp
+++ b/src/dot.cpp
@@ -291,6 +291,7 @@ static QCString replaceRef(const QCString &buf,const QCString relPath,
//bool isXLink=FALSE;
int len = 6;
int indexS = buf.find("href=\""), indexE;
+ bool setTarget = FALSE;
if (indexS>5 && buf.find("xlink:href=\"")!=-1) // XLink href (for SVG)
{
indexS-=6;
@@ -331,7 +332,9 @@ static QCString replaceRef(const QCString &buf,const QCString relPath,
QCString url = link.mid(marker+1);
if (!ref.isEmpty())
{
- result = externalLinkTarget() + externalRef(relPath,ref,FALSE);
+ result = externalLinkTarget();
+ if (result != "") setTarget = TRUE;
+ result += externalRef(relPath,ref,FALSE);
}
result+= href+"=\"";
result+=externalRef(relPath,ref,TRUE);
@@ -342,7 +345,7 @@ static QCString replaceRef(const QCString &buf,const QCString relPath,
result = href+"=\"" + link + "\"";
}
}
- if (!target.isEmpty())
+ if (!target.isEmpty() && !setTarget)
{
result+=" target=\""+target+"\"";
}