From 5ca4075c450acf70481caa664d70993f0611b782 Mon Sep 17 00:00:00 2001 From: Matthias Sohn Date: Mon, 21 Jan 2019 23:44:20 +0100 Subject: [PATCH] pgm: Handle IOException in ShowRef 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: If18a5d8013f1cb393af3a5e5a1ec9613ac2151bd Signed-off-by: Matthias Sohn --- .../src/org/eclipse/jgit/pgm/ShowRef.java | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/ShowRef.java b/org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/ShowRef.java index 6318a633c..d319759ed 100644 --- a/org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/ShowRef.java +++ b/org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/ShowRef.java @@ -56,15 +56,19 @@ import org.eclipse.jgit.lib.RefComparator; class ShowRef extends TextBuiltin { /** {@inheritDoc} */ @Override - protected void run() throws Exception { - for (Ref r : getSortedRefs()) { - show(r.getObjectId(), r.getName()); - if (r.getPeeledObjectId() != null) - show(r.getPeeledObjectId(), r.getName() + "^{}"); //$NON-NLS-1$ + protected void run() { + try { + for (Ref r : getSortedRefs()) { + show(r.getObjectId(), r.getName()); + if (r.getPeeledObjectId() != null) + show(r.getPeeledObjectId(), r.getName() + "^{}"); //$NON-NLS-1$ + } + } catch (IOException e) { + throw die(e.getMessage(), e); } } - private Iterable getSortedRefs() throws Exception { + private Iterable getSortedRefs() throws IOException { List all = db.getRefDatabase().getRefs(); // TODO(jrn) check if we can reintroduce fast-path by e.g. implementing // SortedList