- Fix an off-by-one bug in locale.strxfrm().

  patch taken from http://bugs.debian.org/416934.
diff --git a/Misc/NEWS b/Misc/NEWS
index 9da3d3b..8ef7acb 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -681,6 +681,9 @@
 - Bug #1633621: if curses.resizeterm() or curses.resize_term() is called,
   update _curses.LINES, _curses.COLS, curses.LINES and curses.COLS.
 
+- Fix an off-by-one bug in locale.strxfrm().
+
+
 Tests
 -----
 
diff --git a/Modules/_localemodule.c b/Modules/_localemodule.c
index abfca4e..02e9e53 100644
--- a/Modules/_localemodule.c
+++ b/Modules/_localemodule.c
@@ -360,7 +360,7 @@
     buf = PyMem_Malloc(n1);
     if (!buf)
         return PyErr_NoMemory();
-    n2 = strxfrm(buf, s, n1);
+    n2 = strxfrm(buf, s, n1) + 1;
     if (n2 > n1) {
         /* more space needed */
         buf = PyMem_Realloc(buf, n2);