You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by sl...@apache.org on 2022/07/17 13:49:15 UTC

[maven-gpg-plugin] 01/01: [MGPG-86] Prevent NullPointerException when executable cannot be run

This is an automated email from the ASF dual-hosted git repository.

slachiewicz pushed a commit to branch MGPG-86
in repository https://gitbox.apache.org/repos/asf/maven-gpg-plugin.git

commit 3741f9f743addfeb8ef7ceaff387aa5c8f1cdb03
Author: Charles Honton <ch...@proofpoint.com>
AuthorDate: Sun Jun 12 09:48:24 2022 -0600

    [MGPG-86] Prevent NullPointerException when executable cannot be run
---
 src/main/java/org/apache/maven/plugins/gpg/GpgSigner.java        | 4 ++++
 src/main/java/org/apache/maven/plugins/gpg/GpgVersionParser.java | 5 ++++-
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/src/main/java/org/apache/maven/plugins/gpg/GpgSigner.java b/src/main/java/org/apache/maven/plugins/gpg/GpgSigner.java
index 3fb0f3e..fd12276 100644
--- a/src/main/java/org/apache/maven/plugins/gpg/GpgSigner.java
+++ b/src/main/java/org/apache/maven/plugins/gpg/GpgSigner.java
@@ -69,6 +69,10 @@ public class GpgSigner
         GpgVersionParser versionParser = GpgVersionParser.parse( executable );
 
         GpgVersion gpgVersion = versionParser.getGpgVersion();
+        if ( gpgVersion == null )
+        {
+            throw new MojoExecutionException( "Could not determine gpg version" );
+        }
 
         getLog().debug( gpgVersion.toString() );
 
diff --git a/src/main/java/org/apache/maven/plugins/gpg/GpgVersionParser.java b/src/main/java/org/apache/maven/plugins/gpg/GpgVersionParser.java
index 12adb71..034807c 100644
--- a/src/main/java/org/apache/maven/plugins/gpg/GpgVersionParser.java
+++ b/src/main/java/org/apache/maven/plugins/gpg/GpgVersionParser.java
@@ -23,6 +23,8 @@ import java.io.IOException;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
+import org.apache.maven.plugin.MojoExecutionException;
+
 import org.codehaus.plexus.util.Os;
 import org.codehaus.plexus.util.StringUtils;
 import org.codehaus.plexus.util.cli.CommandLineException;
@@ -58,6 +60,7 @@ public class GpgVersionParser
     }
 
     public static GpgVersionParser parse( String executable )
+        throws MojoExecutionException
     {
         Commandline cmd = new Commandline();
 
@@ -81,7 +84,7 @@ public class GpgVersionParser
         }
         catch ( CommandLineException e )
         {
-            // TODO probably a dedicated exception
+            throw new MojoExecutionException( "failed to execute gpg", e );
         }
 
         return new GpgVersionParser( out );