diff options
| author | Gregory P. Smith <greg@krypto.org> | 2012-06-05 20:30:24 (GMT) |
|---|---|---|
| committer | Gregory P. Smith <greg@krypto.org> | 2012-06-05 20:30:24 (GMT) |
| commit | 902274e9483fb1e179f128b0d5eaafdcae4a4798 (patch) | |
| tree | d4406a2108efe6554445c3410682776428dc4975 | |
| parent | 9844993cde5d8572d8e611d8b437a2e45e841414 (diff) | |
| parent | 58f07a9d6d2aa7b5d624ef23cc89c99071fa249f (diff) | |
| download | cpython-902274e9483fb1e179f128b0d5eaafdcae4a4798.zip cpython-902274e9483fb1e179f128b0d5eaafdcae4a4798.tar.gz cpython-902274e9483fb1e179f128b0d5eaafdcae4a4798.tar.bz2 | |
Fixes issue #15000: support the odd x32 abi on posixsubprocess's system call.
| -rw-r--r-- | Misc/NEWS | 5 | ||||
| -rw-r--r-- | Modules/_posixsubprocess.c | 7 |
2 files changed, 12 insertions, 0 deletions
@@ -55,6 +55,11 @@ Library - Issue #14963: Convert contextlib.ExitStack.__exit__ to use an iterative algorithm (Patch by Alon Horev) +Extension Modules +----------------- + +- Issue #15000: Support the "unique" x32 architecture in _posixsubprocess.c. + Tests ----- diff --git a/Modules/_posixsubprocess.c b/Modules/_posixsubprocess.c index 8d3af6e..4a14788 100644 --- a/Modules/_posixsubprocess.c +++ b/Modules/_posixsubprocess.c @@ -177,8 +177,15 @@ _close_fds_by_brute_force(int start_fd, int end_fd, PyObject *py_fds_to_keep) * chooses to break compatibility with all existing binaries. Highly Unlikely. */ struct linux_dirent { +#if defined(__x86_64__) && defined(__ILP32__) + /* Support the wacky x32 ABI (fake 32-bit userspace speaking to x86_64 + * kernel interfaces) - https://sites.google.com/site/x32abi/ */ + unsigned long long d_ino; + unsigned long long d_off; +#else unsigned long d_ino; /* Inode number */ unsigned long d_off; /* Offset to next linux_dirent */ +#endif unsigned short d_reclen; /* Length of this linux_dirent */ char d_name[256]; /* Filename (null-terminated) */ }; |
