Fix SF bug #1072182, problems with signed characters.

Most of these can be backported.
diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c
index a08058f..b783573 100644
--- a/Modules/posixmodule.c
+++ b/Modules/posixmodule.c
@@ -463,7 +463,7 @@
     if (strlen(msgbuf) > 0) { /* If Non-Empty Msg, Trim CRLF */
         char *lastc = &msgbuf[ strlen(msgbuf)-1 ];
 
-        while (lastc > msgbuf && isspace(*lastc))
+        while (lastc > msgbuf && isspace(Py_CHARMASK(*lastc)))
             *lastc-- = '\0'; /* Trim Trailing Whitespace (CRLF) */
     }