aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--newlib/ChangeLog11
-rw-r--r--newlib/libc/include/stdio.h1
-rw-r--r--newlib/libc/include/sys/reent.h1
-rw-r--r--newlib/libc/stdio/findfp.c2
-rw-r--r--newlib/libc/stdio/fseek.c6
-rw-r--r--newlib/libc/stdio/refill.c1
-rw-r--r--newlib/libc/stdio/vfscanf.c1
-rw-r--r--newlib/libc/stdio64/fseeko64.c6
8 files changed, 18 insertions, 11 deletions
diff --git a/newlib/ChangeLog b/newlib/ChangeLog
index 603ba60..33cb936 100644
--- a/newlib/ChangeLog
+++ b/newlib/ChangeLog
@@ -1,3 +1,14 @@
+2008-11-24 Corinna Vinschen <corinna@vinschen.de>
+
+ * libc/include/stdio.h (__SMOD): Remove definition of unused flag.
+ * libc/include/sys/reent.h (struct __sFILE): Add _flags2 member.
+ * libc/stdio/findfp.c (std): Initialize _flags2.
+ (__sfp): Ditto.
+ * libc/stdio/refill.c (__srefill_r): Drop resetting __SMOD flag.
+ * libc/stdio/vfscanf.c (__ssrefill_r): Ditto.
+ * libc/stdio/fseek.c (_fseek_r): Drop checking __SMOD flag.
+ * libc/stdio64/fseeko64.c (_fseeko64_r): Ditto.
+
2008-11-20 Ken Werner <ken.werner@de.ibm.com>
* libc/machine/spu/sys/linux_syscalls.h: Additional syscall defines to
diff --git a/newlib/libc/include/stdio.h b/newlib/libc/include/stdio.h
index 3f4fa67..1ef102f 100644
--- a/newlib/libc/include/stdio.h
+++ b/newlib/libc/include/stdio.h
@@ -78,7 +78,6 @@ typedef _fpos64_t fpos64_t;
#define __SOPT 0x0400 /* do fseek() optimisation */
#define __SNPT 0x0800 /* do not do fseek() optimisation */
#define __SOFF 0x1000 /* set iff _offset is in fact correct */
-#define __SMOD 0x2000 /* true => fgetline modified _p text */
#if defined(__CYGWIN__)
# define __SCLE 0x4000 /* convert line endings CR/LF <-> NL */
#endif
diff --git a/newlib/libc/include/sys/reent.h b/newlib/libc/include/sys/reent.h
index 7857a37..b5d5c7d 100644
--- a/newlib/libc/include/sys/reent.h
+++ b/newlib/libc/include/sys/reent.h
@@ -212,6 +212,7 @@ struct __sFILE {
#ifndef __SINGLE_THREAD__
_flock_t _lock; /* for thread-safety locking */
#endif
+ int _flags2; /* for future use */
};
#ifdef __CUSTOM_FILE_IO__
diff --git a/newlib/libc/stdio/findfp.c b/newlib/libc/stdio/findfp.c
index 4f613e5..0de2a7f 100644
--- a/newlib/libc/stdio/findfp.c
+++ b/newlib/libc/stdio/findfp.c
@@ -46,6 +46,7 @@ _DEFUN(std, (ptr, flags, file, data),
ptr->_r = 0;
ptr->_w = 0;
ptr->_flags = flags;
+ ptr->_flags2 = 0;
ptr->_file = file;
ptr->_bf._base = 0;
ptr->_bf._size = 0;
@@ -126,6 +127,7 @@ _DEFUN(__sfp, (d),
found:
fp->_file = -1; /* no file */
fp->_flags = 1; /* reserve this slot; caller sets real flags */
+ fp->_flags2 = 0;
#ifndef __SINGLE_THREAD__
__lock_init_recursive (fp->_lock);
#endif
diff --git a/newlib/libc/stdio/fseek.c b/newlib/libc/stdio/fseek.c
index 569bad7..06c6665 100644
--- a/newlib/libc/stdio/fseek.c
+++ b/newlib/libc/stdio/fseek.c
@@ -304,12 +304,10 @@ _DEFUN(_fseek_r, (ptr, fp, offset, whence),
/*
* If the target offset is within the current buffer,
* simply adjust the pointers, clear EOF, undo ungetc(),
- * and return. (If the buffer was modified, we have to
- * skip this; see fgetline.c.)
+ * and return.
*/
- if ((fp->_flags & __SMOD) == 0 &&
- target >= curoff && target < curoff + n)
+ if (target >= curoff && target < curoff + n)
{
register int o = target - curoff;
diff --git a/newlib/libc/stdio/refill.c b/newlib/libc/stdio/refill.c
index 6b329a8..9e76e66 100644
--- a/newlib/libc/stdio/refill.c
+++ b/newlib/libc/stdio/refill.c
@@ -105,7 +105,6 @@ _DEFUN(__srefill_r, (ptr, fp),
_CAST_VOID _fwalk (_GLOBAL_REENT, lflush);
fp->_p = fp->_bf._base;
fp->_r = fp->_read (ptr, fp->_cookie, (char *) fp->_p, fp->_bf._size);
- fp->_flags &= ~__SMOD; /* buffer contents are again pristine */
#ifndef __CYGWIN__
if (fp->_r <= 0)
#else
diff --git a/newlib/libc/stdio/vfscanf.c b/newlib/libc/stdio/vfscanf.c
index 39c5a0a..0b5e975 100644
--- a/newlib/libc/stdio/vfscanf.c
+++ b/newlib/libc/stdio/vfscanf.c
@@ -379,7 +379,6 @@ _DEFUN(__ssrefill_r, (ptr, fp),
/* Otherwise we are out of character input. */
fp->_p = fp->_bf._base;
fp->_r = 0;
- fp->_flags &= ~__SMOD; /* buffer contents are again pristine */
fp->_flags |= __SEOF;
return EOF;
}
diff --git a/newlib/libc/stdio64/fseeko64.c b/newlib/libc/stdio64/fseeko64.c
index 280484e..6f5e9af 100644
--- a/newlib/libc/stdio64/fseeko64.c
+++ b/newlib/libc/stdio64/fseeko64.c
@@ -282,12 +282,10 @@ _DEFUN (_fseeko64_r, (ptr, fp, offset, whence),
/*
* If the target offset is within the current buffer,
* simply adjust the pointers, clear EOF, undo ungetc(),
- * and return. (If the buffer was modified, we have to
- * skip this; see fgetline.c.)
+ * and return.
*/
- if ((fp->_flags & __SMOD) == 0 &&
- target >= curoff && target < curoff + n)
+ if (target >= curoff && target < curoff + n)
{
register int o = target - curoff;