diff --git a/pygit2.c b/pygit2.c
index 59aa7b5..56e5d90 100644
--- a/pygit2.c
+++ b/pygit2.c
@@ -613,7 +613,7 @@ Repository_create_commit(Repository *self, PyObject *args)
     }
 
     err = git_commit_create(&oid, self->repo, update_ref, author, committer,
-        message, tree, parent_count, (const git_commit**)parents);
+        NULL, message, tree, parent_count, (const git_commit**)parents);
     git_tree_close(tree);
     free_parents(parents, parent_count);
     if (err < 0)
@@ -1012,9 +1012,15 @@ static PyTypeObject ObjectType = {
 };
 
 static PyObject *
-Commit_get_message_short(Commit *commit)
+Commit_get_message_encoding(Commit *commit)
 {
-    return PyString_FromString(git_commit_message_short(commit->commit));
+    char *encoding;
+
+    encoding = git_commit_message_encoding(commit->commit);
+    if (encoding == NULL)
+        Py_RETURN_NONE;
+
+    return PyString_FromString(encoding);
 }
 
 static PyObject *
@@ -1100,8 +1106,8 @@ Commit_get_parents(Commit *commit)
 }
 
 static PyGetSetDef Commit_getseters[] = {
-    {"message_short", (getter)Commit_get_message_short, NULL, "short message",
-     NULL},
+    {"message_encoding", (getter)Commit_get_message_encoding, NULL,
+     "message encoding", NULL},
     {"message", (getter)Commit_get_message, NULL, "message", NULL},
     {"commit_time", (getter)Commit_get_commit_time, NULL, "commit time",
      NULL},
diff --git a/test/test_commit.py b/test/test_commit.py
index deb7bd5..e308961 100644
--- a/test/test_commit.py
+++ b/test/test_commit.py
@@ -46,7 +46,8 @@ class CommitTest(utils.BareRepoTestCase):
         self.assertEqual(1, len(parents))
         self.assertEqual('c2792cfa289ae6321ecf2cd5806c2194b0fd070c',
                          parents[0].sha)
-        self.assertEqual('Second test data commit.', commit.message_short)
+        self.assertEqual(None, commit.message_encoding)
+        #self.assertEqual('Second test data commit.', commit.message_short)
         self.assertEqual(('Second test data commit.\n\n'
                           'This commit has some additional text.\n'),
                          commit.message)
@@ -76,8 +77,9 @@ class CommitTest(utils.BareRepoTestCase):
         self.assertEqual(GIT_OBJ_COMMIT, commit.type)
         self.assertEqual('30bb126a4959290987fc07ea49f92be276dce9d6',
                          commit.sha)
+        self.assertEqual(None, commit.message_encoding)
         self.assertEqual(message, commit.message)
-        self.assertEqual('New commit.', commit.message_short)
+        #self.assertEqual('New commit.', commit.message_short)
         self.assertEqual(12346, commit.commit_time)
         self.assertEqual(committer, commit.committer)
         self.assertEqual(author, commit.author)
diff --git a/test/test_tag.py b/test/test_tag.py
index a8b447b..8b3a598 100644
--- a/test/test_tag.py
+++ b/test/test_tag.py
@@ -52,7 +52,7 @@ class TagTest(utils.BareRepoTestCase):
 
         commit = tag.target
         del tag
-        self.assertEqual('Initial test data commit.', commit.message_short)
+        self.assertEqual('Initial test data commit.\n', commit.message)
 
     def test_new_tag(self):
         name = 'thetag'