Fixed a bug in PyUnicode_DecodeFSDefault. strcmp() returns 0 on success.
Added PyUnicode_DecodeFSDefaultAndSize
Fixed a problem with the sys.path code that caused a segfault on Windows when the path contains non ASCII chars. The code for sys.executable, exec_prefix and prefix should be fixed, too.
diff --git a/Python/sysmodule.c b/Python/sysmodule.c
index 13e0a99..d140fe3 100644
--- a/Python/sysmodule.c
+++ b/Python/sysmodule.c
@@ -1150,7 +1150,7 @@
p = strchr(path, delim);
if (p == NULL)
p = strchr(path, '\0'); /* End of string */
- w = PyUnicode_FromStringAndSize(path, (Py_ssize_t) (p - path));
+ w = PyUnicode_DecodeFSDefaultAndSize(path, (Py_ssize_t) (p - path));
if (w == NULL) {
Py_DECREF(v);
return NULL;