Rip out the file object's implementation.
Fixed test_import.py while I was at it.
However, there's still a problem in import.c -- get_file() can leak a
FILE struct (not a file descriptor though). I'm not sure how to fix
this; closing the FILE* closes the file descriptor, and that's the
wrong thing to do when there's still a Python file object keeping the
file descriptor open. I also would rather not mess with dup(), as it
won't port to Windows.
diff --git a/Modules/pyexpat.c b/Modules/pyexpat.c
index aebae1c..c583edf 100644
--- a/Modules/pyexpat.c
+++ b/Modules/pyexpat.c
@@ -956,10 +956,7 @@
FILE *fp;
PyObject *readmethod = NULL;
- if (PyFile_Check(f)) {
- fp = PyFile_AsFile(f);
- }
- else {
+ {
fp = NULL;
readmethod = PyObject_GetAttrString(f, "read");
if (readmethod == NULL) {