Remove debug output, fix assert (hopefully) and exercise signedness issues a bit more.

This commit is contained in:
Antoine Pitrou 2012-01-25 15:38:32 +01:00
parent b744cef654
commit 6f25d75f25
2 changed files with 3 additions and 8 deletions

View File

@ -288,7 +288,7 @@ class ImportTests(unittest.TestCase):
with open(source, 'w') as f: with open(source, 'w') as f:
pass pass
try: try:
os.utime(source, (2 ** 33, 2 ** 33)) os.utime(source, (2 ** 33 - 5, 2 ** 33 - 5))
except OverflowError: except OverflowError:
self.skipTest("cannot set modification time to large integer") self.skipTest("cannot set modification time to large integer")
except OSError as e: except OSError as e:

View File

@ -905,14 +905,9 @@ write_compiled_module(PyCodeObject *co, char *cpathname, struct stat *srcstat)
(void) unlink(cpathname); (void) unlink(cpathname);
return; return;
} }
/* Now write the true mtime */ /* Now write the true mtime (as a 32-bit field) */
fseek(fp, 4L, 0); fseek(fp, 4L, 0);
if (mtime >= LONG_MAX) { assert(mtime <= 0xFFFFFFFF);
fprintf(stderr, "** sizes=(%ld, %ld), mtime=%I64d >= %ld\n", sizeof(time_t), sizeof(srcstat->st_mtime), mtime, LONG_MAX);
assert(0);
/* can't get here */
}
assert(mtime < LONG_MAX);
PyMarshal_WriteLongToFile((long)mtime, fp, Py_MARSHAL_VERSION); PyMarshal_WriteLongToFile((long)mtime, fp, Py_MARSHAL_VERSION);
fflush(fp); fflush(fp);
fclose(fp); fclose(fp);