mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
IDEADEV-40972: Artifacts: special characters are not escaped in default output archive name
This commit is contained in:
@@ -15,6 +15,7 @@
|
||||
*/
|
||||
package com.intellij.packaging.impl.artifacts;
|
||||
|
||||
import com.intellij.openapi.util.io.FileUtil;
|
||||
import com.intellij.packaging.artifacts.ArtifactType;
|
||||
import com.intellij.packaging.elements.CompositePackagingElement;
|
||||
import com.intellij.packaging.elements.PackagingElementOutputKind;
|
||||
@@ -45,6 +46,6 @@ public class JarArtifactType extends ArtifactType {
|
||||
@NotNull
|
||||
@Override
|
||||
public CompositePackagingElement<?> createRootElement(@NotNull String artifactName) {
|
||||
return new ArchivePackagingElement(artifactName + ".jar");
|
||||
return new ArchivePackagingElement(FileUtil.sanitizeFileName(artifactName) + ".jar");
|
||||
}
|
||||
}
|
||||
|
||||
+3
-2
@@ -356,13 +356,14 @@ public class ArtifactEditorImpl implements ArtifactEditorEx {
|
||||
setOutputPath(ArtifactUtil.getDefaultArtifactOutputPath(newArtifactName, myProject));
|
||||
final CompositePackagingElement<?> root = getRootElement();
|
||||
if (root instanceof ArchivePackagingElement) {
|
||||
String oldFileName = FileUtil.sanitizeFileName(oldArtifactName);
|
||||
final String name = ((ArchivePackagingElement)root).getArchiveFileName();
|
||||
final String fileName = FileUtil.getNameWithoutExtension(name);
|
||||
final String extension = FileUtil.getExtension(name);
|
||||
if (fileName.equals(oldArtifactName) && extension.length() > 0) {
|
||||
if (fileName.equals(oldFileName) && extension.length() > 0) {
|
||||
myLayoutTreeComponent.editLayout(new Runnable() {
|
||||
public void run() {
|
||||
((ArchivePackagingElement)getRootElement()).setArchiveFileName(newArtifactName + "." + extension);
|
||||
((ArchivePackagingElement)getRootElement()).setArchiveFileName(FileUtil.sanitizeFileName(newArtifactName) + "." + extension);
|
||||
}
|
||||
});
|
||||
myLayoutTreeComponent.updateRootNode();
|
||||
|
||||
Reference in New Issue
Block a user