Conrad Huang points out that "if (0 < ch < 256)", while legal C,
doesn't mean what the Python programmer thought...
diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c
index b876f34..e4bbcff 100644
--- a/Objects/unicodeobject.c
+++ b/Objects/unicodeobject.c
@@ -1958,7 +1958,7 @@
 	    *output++ = '0' + decimal;
 	    continue;
 	}
-	if (0 < ch < 256) {
+	if (0 < ch && ch < 256) {
 	    *output++ = (char) ch;
 	    continue;
 	}