projects
/
cc0
/
argeo-build.git
/ commitdiff
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
e03e096
)
Fix uninstall of repackaged jars
author
Mathieu Baudier <mbaudier@argeo.org>
Wed, 6 Mar 2024 10:54:54 +0000
(11:54 +0100)
committer
Mathieu Baudier <mbaudier@argeo.org>
Wed, 6 Mar 2024 10:54:54 +0000
(11:54 +0100)
src/org/argeo/build/Make.java
patch
|
blob
|
history
diff --git
a/src/org/argeo/build/Make.java
b/src/org/argeo/build/Make.java
index 71976c00188d70cdff9125efb6912865fcf610f2..9f6f0846d1a6447c7664bb04ad66db3f5451a482 100644
(file)
--- a/
src/org/argeo/build/Make.java
+++ b/
src/org/argeo/build/Make.java
@@
-378,7
+378,10
@@
public class Make {
count++;
}
Path targetParent = targetJarP.getParent();
count++;
}
Path targetParent = targetJarP.getParent();
- deleteEmptyParents(targetA2, targetParent);
+ if (targetParent.startsWith(targetA2))
+ deleteEmptyParents(targetA2, targetParent);
+ if (targetParent.startsWith(nativeTargetA2))
+ deleteEmptyParents(nativeTargetA2, targetParent);
} else { // install
Files.createDirectories(targetJarP.getParent());
boolean update = Files.exists(targetJarP);
} else { // install
Files.createDirectories(targetJarP.getParent());
boolean update = Files.exists(targetJarP);
@@
-411,16
+414,16
@@
public class Make {
return values != null ? values : new ArrayList<>();
}
return values != null ? values : new ArrayList<>();
}
- /** Delete empty parent directory up to the
A2 target
(included). */
- void deleteEmptyParents(Path
targetA2
, Path targetParent) throws IOException {
+ /** Delete empty parent directory up to the
base directory
(included). */
+ void deleteEmptyParents(Path
baseDir
, Path targetParent) throws IOException {
if (!Files.isDirectory(targetParent))
throw new IllegalArgumentException(targetParent + " must be a directory");
if (!Files.isDirectory(targetParent))
throw new IllegalArgumentException(targetParent + " must be a directory");
- boolean isA2target = Files.isSameFile(
targetA2
, targetParent);
+ boolean isA2target = Files.isSameFile(
baseDir
, targetParent);
if (!Files.list(targetParent).iterator().hasNext()) {
Files.delete(targetParent);
if (isA2target)
return;// stop after deleting A2 base
if (!Files.list(targetParent).iterator().hasNext()) {
Files.delete(targetParent);
if (isA2target)
return;// stop after deleting A2 base
- deleteEmptyParents(
targetA2
, targetParent.getParent());
+ deleteEmptyParents(
baseDir
, targetParent.getParent());
}
}
}
}