]> source.dussan.org Git - jgit.git/commitdiff
ChangeIdUtil: Don't throw IOException 70/64670/4
authorDave Borowitz <dborowitz@google.com>
Tue, 19 Jan 2016 16:13:40 +0000 (11:13 -0500)
committerDave Borowitz <dborowitz@google.com>
Tue, 19 Jan 2016 22:59:19 +0000 (17:59 -0500)
This could have only happened during the getBytes call. Instead, use
Constants.encode, which is a non-throwing implementation.

This change is binary compatible with existing code compiled against
older versions of JGit, although it might break compilation of
previously compiling code due to dead catch blocks.

Change-Id: I191fec5cac718657407230de141440e86d0151fb

org.eclipse.jgit/src/org/eclipse/jgit/util/ChangeIdUtil.java

index 35fc99e54e32dc5a56483efb523fb83000410418..e14096e5980eac827f14b64d5630e8cb97d7cd2c 100644 (file)
@@ -42,7 +42,6 @@
  */
 package org.eclipse.jgit.util;
 
-import java.io.IOException;
 import java.util.regex.Pattern;
 
 import org.eclipse.jgit.lib.Constants;
@@ -90,12 +89,10 @@ public class ChangeIdUtil {
         *            The commit message
         * @return the change id SHA1 string (without the 'I') or null if the
         *         message is not complete enough
-        * @throws IOException
         */
        public static ObjectId computeChangeId(final ObjectId treeId,
                        final ObjectId firstParentId, final PersonIdent author,
-                       final PersonIdent committer, final String message)
-                       throws IOException {
+                       final PersonIdent committer, final String message) {
                String cleanMessage = clean(message);
                if (cleanMessage.length() == 0)
                        return null;
@@ -116,8 +113,7 @@ public class ChangeIdUtil {
                b.append("\n\n"); //$NON-NLS-1$
                b.append(cleanMessage);
                try (ObjectInserter f = new ObjectInserter.Formatter()) {
-                       return f.idFor(Constants.OBJ_COMMIT, //
-                                       b.toString().getBytes(Constants.CHARACTER_ENCODING));
+                       return f.idFor(Constants.OBJ_COMMIT, Constants.encode(b.toString()));
                }
        }