From: Paul Eggert Date: Sun, 23 Dec 2018 02:00:10 +0000 (-0800) Subject: stdioext: port to newer 32-bit Android X-Git-Tag: v1.0~5182 X-Git-Url: https://gitweb.git.savannah.gnu.org/gitweb/?a=commitdiff_plain;h=d91fe44f159cfe7614d9e1547624579161bd25c5;p=gnulib.git stdioext: port to newer 32-bit Android Problem reported by Tom Yan in: https://lists.gnu.org/archive/html/bug-gnulib/2018-07/msg00014.html * lib/stdio-impl.h (_gl_FILE_flags_t) [__ANDROID__]: New macro. (fp_) [__ANDROID__]: Use it. --- diff --git a/ChangeLog b/ChangeLog index a64b7b721a..bb3598a414 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2018-12-22 Paul Eggert + + stdioext: port to newer 32-bit Android + Problem reported by Tom Yan in: + https://lists.gnu.org/archive/html/bug-gnulib/2018-07/msg00014.html + * lib/stdio-impl.h (_gl_FILE_flags_t) [__ANDROID__]: New macro. + (fp_) [__ANDROID__]: Use it. + 2019-01-04 Bruno Haible lock: Fix link error with --enable-threads=pth. diff --git a/lib/stdio-impl.h b/lib/stdio-impl.h index b2b2971f2f..4260468b61 100644 --- a/lib/stdio-impl.h +++ b/lib/stdio-impl.h @@ -61,6 +61,11 @@ # define _r pub._r # define _w pub._w # elif defined __ANDROID__ /* Android */ +# ifdef __LP64__ +# define _gl_flags_file_t int +# else +# define _gl_flags_file_t short +# endif /* Up to this commit from 2015-10-12 the innards of FILE were public, and fp_ub could be defined like for OpenBSD, @@ -70,8 +75,8 @@ # define fp_ ((struct { unsigned char *_p; \ int _r; \ int _w; \ - int _flags; \ - int _file; \ + _gl_flags_file_t _flags; \ + _gl_flags_file_t _file; \ struct { unsigned char *_base; size_t _size; } _bf; \ int _lbfsize; \ void *_cookie; \