void-packages/srcpkgs/python3/patches/3102.patch
2017-08-28 01:13:30 +02:00

62 lines
2.5 KiB
Diff

From 3cc711822edfabd05f5d06201eca922df8c132cc Mon Sep 17 00:00:00 2001
From: xdegaye <xdegaye@gmail.com>
Date: Mon, 22 May 2017 11:15:08 +0200
Subject: [PATCH] bpo-29619: Do not use HAVE_LARGEFILE_SUPPORT for type
conversions (GH-1666)
Use only the LongLong form for the conversions
(cherry picked from commit 50e86033de85294d87b7e942701d456342abde8e)
---
Modules/posixmodule.c | 23 +++++------------------
1 file changed, 5 insertions(+), 18 deletions(-)
diff --git Modules/posixmodule.c.orig Modules/posixmodule.c
index 97b57198cd4..111e4c9fde5 100644
--- Modules/posixmodule.c.orig
+++ Modules/posixmodule.c
@@ -1934,14 +1934,8 @@ _pystat_fromstructstat(STRUCT_STAT *st)
return NULL;
PyStructSequence_SET_ITEM(v, 0, PyLong_FromLong((long)st->st_mode));
-#if defined(HAVE_LARGEFILE_SUPPORT) || defined(MS_WINDOWS)
Py_BUILD_ASSERT(sizeof(unsigned long long) >= sizeof(st->st_ino));
- PyStructSequence_SET_ITEM(v, 1,
- PyLong_FromUnsignedLongLong(st->st_ino));
-#else
- Py_BUILD_ASSERT(sizeof(unsigned long) >= sizeof(st->st_ino));
- PyStructSequence_SET_ITEM(v, 1, PyLong_FromUnsignedLong(st->st_ino));
-#endif
+ PyStructSequence_SET_ITEM(v, 1, PyLong_FromUnsignedLongLong(st->st_ino));
#ifdef MS_WINDOWS
PyStructSequence_SET_ITEM(v, 2, PyLong_FromUnsignedLong(st->st_dev));
#else
@@ -1955,12 +1949,8 @@ _pystat_fromstructstat(STRUCT_STAT *st)
PyStructSequence_SET_ITEM(v, 4, _PyLong_FromUid(st->st_uid));
PyStructSequence_SET_ITEM(v, 5, _PyLong_FromGid(st->st_gid));
#endif
-#ifdef HAVE_LARGEFILE_SUPPORT
- PyStructSequence_SET_ITEM(v, 6,
- PyLong_FromLongLong((long long)st->st_size));
-#else
- PyStructSequence_SET_ITEM(v, 6, PyLong_FromLong(st->st_size));
-#endif
+ Py_BUILD_ASSERT(sizeof(long long) >= sizeof(st->st_size));
+ PyStructSequence_SET_ITEM(v, 6, PyLong_FromLongLong(st->st_size));
#if defined(HAVE_STAT_TV_NSEC)
ansec = st->st_atim.tv_nsec;
@@ -11484,11 +11474,8 @@ DirEntry_inode(DirEntry *self)
Py_BUILD_ASSERT(sizeof(unsigned long long) >= sizeof(self->win32_file_index));
return PyLong_FromUnsignedLongLong(self->win32_file_index);
#else /* POSIX */
-#ifdef HAVE_LARGEFILE_SUPPORT
- return PyLong_FromLongLong((long long)self->d_ino);
-#else
- return PyLong_FromLong((long)self->d_ino);
-#endif
+ Py_BUILD_ASSERT(sizeof(unsigned long long) >= sizeof(self->d_ino));
+ return PyLong_FromUnsignedLongLong(self->d_ino);
#endif
}