From: xdegaye Date: Mon, 22 May 2017 09:15:08 +0000 (+0200) Subject: bpo-29619: Do not use HAVE_LARGEFILE_SUPPORT for type conversions (GH-1666). X-Git-Tag: v3.7.0a1~779 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=50e86033de85294d87b7e942701d456342abde8e;p=python bpo-29619: Do not use HAVE_LARGEFILE_SUPPORT for type conversions (GH-1666). bpo-29619: Do not use HAVE_LARGEFILE_SUPPORT for type conversions (GH-1666). * Use only the LongLong form for the conversions. --- diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c index e8c15a9473..5c739180ea 100644 --- a/Modules/posixmodule.c +++ b/Modules/posixmodule.c @@ -1927,14 +1927,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 @@ -1948,12 +1942,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; @@ -11451,11 +11441,8 @@ os_DirEntry_inode_impl(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 }