PyErr_ProgramText(): Grrrrrr.
In a Windows debug build, trying to open a file using
an empty string as the name causes assertion death
inside MS's C runtime code. We probably need to worm
around that in many places. I'm worming around it here
to stop the new test_with.py from assert-dying in the
Windows debug build (it calls compile() with an empty
string for "the file name", which indirectly leads to
C-level code in Python trying to fopen("", "r")).
diff --git a/Python/errors.c b/Python/errors.c
index ace63ff..cbcc6fa 100644
--- a/Python/errors.c
+++ b/Python/errors.c
@@ -738,7 +738,7 @@
int i;
char linebuf[1000];
- if (filename == NULL || lineno <= 0)
+ if (filename == NULL || *filename == '\0' || lineno <= 0)
return NULL;
fp = fopen(filename, "r" PY_STDIOTEXTMODE);
if (fp == NULL)