+2015-03-23 Roland McGrath <roland@hack.frob.com>
+
+ * libio/iofdopen.c: Move FD_FLAGS declaration into its first use,
+ inside [F_GETFL]. Remove POSIX_MODE local variable, just test the
+ _IO_IS_APPENDING bit in READ_WRITE instead.
+
2015-03-23 Florian Weimer <fweimer@redhat.com>
* sysdeps/unix/sysv/linux/pthread_setaffinity.c
const char *mode;
{
int read_write;
- int posix_mode = 0;
struct locked_FILE
{
struct _IO_FILE_plus fp;
#endif
struct _IO_wide_data wd;
} *new_f;
- int fd_flags;
int i;
int use_mmap = 0;
read_write = _IO_NO_READS;
break;
case 'a':
- posix_mode = O_APPEND;
read_write = _IO_NO_READS|_IO_IS_APPENDING;
break;
default:
break;
}
#ifdef F_GETFL
- fd_flags = _IO_fcntl (fd, F_GETFL);
+ int fd_flags = _IO_fcntl (fd, F_GETFL);
#ifndef O_ACCMODE
#define O_ACCMODE (O_RDONLY|O_WRONLY|O_RDWR)
#endif
Realtime Extensions], Rationale B.8.3.3
Open a Stream on a File Descriptor says:
- Although not explicitly required by POSIX.1, a good
- implementation of append ("a") mode would cause the
- O_APPEND flag to be set.
+ Although not explicitly required by POSIX.1, a good
+ implementation of append ("a") mode would cause the
+ O_APPEND flag to be set.
(Historical implementations [such as Solaris2] do a one-time
seek in fdopen.)
though that would seem consistent) because that would be more
likely to break historical programs.
*/
- if ((posix_mode & O_APPEND) && !(fd_flags & O_APPEND))
+ if ((read_write & _IO_IS_APPENDING) && !(fd_flags & O_APPEND))
{
do_seek = true;
#ifdef F_SETFL