This is an automated email from the ASF dual-hosted git repository.
kwin pushed a commit to branch master
in repository
https://gitbox.apache.org/repos/asf/sling-org-apache-sling-feature-cpconverter.git
The following commit(s) were added to refs/heads/master by this push:
new ffb2039 SLING-12895 Improve exception handling for invalid content
packages
ffb2039 is described below
commit ffb2039dee744c9fe832cf045dff3664654ebbe6
Author: Konrad Windszus <[email protected]>
AuthorDate: Wed Aug 20 12:15:03 2025 +0200
SLING-12895 Improve exception handling for invalid content packages
Prevents NPE for ZIP files not having a package id.
---
.../feature/cpconverter/vltpkg/BaseVaultPackageScanner.java | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
diff --git
a/src/main/java/org/apache/sling/feature/cpconverter/vltpkg/BaseVaultPackageScanner.java
b/src/main/java/org/apache/sling/feature/cpconverter/vltpkg/BaseVaultPackageScanner.java
index 6e15d74..5938753 100644
---
a/src/main/java/org/apache/sling/feature/cpconverter/vltpkg/BaseVaultPackageScanner.java
+++
b/src/main/java/org/apache/sling/feature/cpconverter/vltpkg/BaseVaultPackageScanner.java
@@ -53,9 +53,14 @@ public abstract class BaseVaultPackageScanner {
this.strictValidation = strictValidation;
}
- public @NotNull VaultPackage open(@NotNull File vaultPackage) throws
IOException, ConverterException {
- requireNonNull(vaultPackage, "Impossible to process a null vault
package");
- return packageManager.open(vaultPackage, strictValidation);
+ public @NotNull VaultPackage open(@NotNull File vaultPackagePath) throws
IOException, ConverterException {
+ requireNonNull(vaultPackagePath, "Impossible to process a null vault
package");
+ VaultPackage vaultPackage = packageManager.open(vaultPackagePath,
strictValidation);
+ if (!vaultPackage.isValid()) {
+ vaultPackage.close();
+ throw new ConverterException("The package " +
vaultPackagePath.getAbsolutePath() + " is not valid (does not contain a
mandatory filter).");
+ }
+ return vaultPackage;
}
public final void traverse(@NotNull File vaultPackageFile, boolean
closeOnTraversed, String runMode) throws IOException, ConverterException {