From 11a907553629b87cb7affe59a7c9b2f4bda564f8 Mon Sep 17 00:00:00 2001 From: Matthias Sohn Date: Sun, 20 Jan 2019 01:45:38 +0100 Subject: [PATCH] pgm: Handle exceptions in Describe command This avoids we show a stacktrace on the console by default when this type of exception is thrown during the run method is executed. Change-Id: Ic5d9d94c4a451f300fb7ad3f71b3e22db9a2c181 Signed-off-by: Matthias Sohn --- .../src/org/eclipse/jgit/pgm/Describe.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/Describe.java b/org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/Describe.java index f91474859..705bcd768 100644 --- a/org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/Describe.java +++ b/org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/Describe.java @@ -42,12 +42,15 @@ */ package org.eclipse.jgit.pgm; +import java.io.IOException; import java.util.ArrayList; import java.util.List; import org.eclipse.jgit.api.DescribeCommand; import org.eclipse.jgit.api.Git; +import org.eclipse.jgit.api.errors.GitAPIException; import org.eclipse.jgit.api.errors.RefNotFoundException; +import org.eclipse.jgit.errors.InvalidPatternException; import org.eclipse.jgit.lib.ObjectId; import org.eclipse.jgit.pgm.internal.CLIText; import org.kohsuke.args4j.Argument; @@ -67,7 +70,7 @@ class Describe extends TextBuiltin { /** {@inheritDoc} */ @Override - protected void run() throws Exception { + protected void run() { try (Git git = new Git(db)) { DescribeCommand cmd = git.describe(); if (tree != null) @@ -84,6 +87,8 @@ class Describe extends TextBuiltin { throw die(CLIText.get().noNamesFound); outw.println(result); + } catch (IOException | InvalidPatternException | GitAPIException e) { + throw die(e.getMessage(), e); } } }