Mercurial > hg > tc-symbol-server
changeset 111:204681404aa1
workaround archive path processing issue
author | Evgeniy.Koshkin@unit-519.Labs.IntelliJ.Net |
---|---|
date | Wed, 18 May 2016 18:56:33 +0300 |
parents | 0d0a3c1aa428 |
children | bb78121b3602 8d6bfbd57bd7 |
files | agent/src/jetbrains/buildServer/symbols/ArtifactPathHelper.java |
diffstat | 1 files changed, 6 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/agent/src/jetbrains/buildServer/symbols/ArtifactPathHelper.java Wed May 18 17:34:21 2016 +0300 +++ b/agent/src/jetbrains/buildServer/symbols/ArtifactPathHelper.java Wed May 18 18:56:33 2016 +0300 @@ -10,8 +10,9 @@ * Created by Evgeniy.Koshkin. */ public class ArtifactPathHelper { - private static final String ARCHIVE_DELIMITER = "!"; - private static final String FOLDER_DELIMITER = "/"; + private static final String ARCHIVE_PATH_SEPARATOR = "!"; + private static final String ARCHIVE_PATH_SEPARATOR_FULL = "!/"; + private static final String FOLDER_SEPARATOR = "/"; private final ExtensionHolder myExtensions; @@ -21,8 +22,9 @@ @NotNull String concatenateArtifactPath(String fileNamePrefix, String pdbFileName) { - final String delimiter = (isPathToArchive(fileNamePrefix) && !fileNamePrefix.contains(ARCHIVE_DELIMITER)) ? ARCHIVE_DELIMITER : FOLDER_DELIMITER; - return fileNamePrefix + delimiter + pdbFileName; + final String normilizedFileNamePrefix = fileNamePrefix.replace(ARCHIVE_PATH_SEPARATOR, ARCHIVE_PATH_SEPARATOR_FULL); + final String delimiter = (isPathToArchive(normilizedFileNamePrefix) && !normilizedFileNamePrefix.contains(ARCHIVE_PATH_SEPARATOR)) ? ARCHIVE_PATH_SEPARATOR_FULL : FOLDER_SEPARATOR; + return normilizedFileNamePrefix + delimiter + pdbFileName; } private boolean isPathToArchive(@NotNull final String path){