Mercurial > hg > mercurial
changeset 345:607091bd8ccd
Merge branch Eluru-6.5.x
author | Dmitry Neverov <dmitry.neverov@jetbrains.com> |
---|---|
date | Tue, 10 Jan 2012 13:08:37 +0400 |
parents | ff542d94e289 (current diff) ec375e18374f (diff) |
children | 4a49a0baf30b |
files | mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/LogCommand.java |
diffstat | 1 files changed, 14 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/LogCommand.java Thu Jan 05 13:20:03 2012 +0100 +++ b/mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/LogCommand.java Tue Jan 10 13:08:37 2012 +0400 @@ -110,11 +110,24 @@ private List<ChangeSet> parseChangeSetsXml(@NotNull final String xml) throws JDOMException, IOException, ParseException { if ("".equals(xml)) return Collections.emptyList(); - Document doc = JDOMUtil.loadDocument(xml); + Document doc = loadDocument(xml); Element log = doc.getRootElement(); return parseLog(log); } + private Document loadDocument(@NotNull final String xml) throws IOException, JDOMException { + String validXml = makeValidXml(xml); + return JDOMUtil.loadDocument(validXml); + } + + private String makeValidXml(@NotNull final String xml) { + String trimmed = xml.trim(); + if (trimmed.endsWith("</log>")) + return xml; + else + return xml + "</log>"; + } + private List<ChangeSet> parseLog(@NotNull final Element logElement) throws ParseException { List<ChangeSet> result = new ArrayList<ChangeSet>();