Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--newlib/ChangeLog5
-rw-r--r--newlib/libc/stdio/flags.c6
2 files changed, 8 insertions, 3 deletions
diff --git a/newlib/ChangeLog b/newlib/ChangeLog
index 6adf4f4d8..2e39d2b07 100644
--- a/newlib/ChangeLog
+++ b/newlib/ChangeLog
@@ -1,3 +1,8 @@
+Fri Feb 25 14:50:50 2000 Jeff Johnston <jjohnstn@cygnus.com>
+
+ * libc/stdio/flags.c (__sflags): Added check that mode[1]
+ is non-null before looking at mode[2].
+
Thu Feb 24 11:43:00 2000 Ran Cabell <rcabell@norfolk.infi.net>
* libm/mathfp/sf_atan2.c: Fix atan2 typo for _DOUBLE_IS_32_BITS.
diff --git a/newlib/libc/stdio/flags.c b/newlib/libc/stdio/flags.c
index 6d62bd5bc..e448cca80 100644
--- a/newlib/libc/stdio/flags.c
+++ b/newlib/libc/stdio/flags.c
@@ -61,19 +61,19 @@ __sflags (ptr, mode, optr)
ptr->_errno = EINVAL;
return (0);
}
- if (mode[1] == '+' || mode[2] == '+')
+ if (mode[1] && (mode[1] == '+' || mode[2] == '+'))
{
ret = __SRW;
m = O_RDWR;
}
- if (mode[1] == 'b' || mode[2] == 'b')
+ if (mode[1] && (mode[1] == 'b' || mode[2] == 'b'))
{
#ifdef O_BINARY
m |= O_BINARY;
#endif
}
#ifdef __CYGWIN__
- else if (mode[1] == 't' || mode[2] == 't')
+ else if (mode[1] && (mode[1] == 't' || mode[2] == 't'))
#else
else
#endif