summaryrefslogtreecommitdiffstats
path: root/contrib/gcclibs
diff options
context:
space:
mode:
authorpfg <pfg@FreeBSD.org>2013-12-12 19:01:50 +0000
committerpfg <pfg@FreeBSD.org>2013-12-12 19:01:50 +0000
commitb8648b775ac53e96f3a168ab937cc4ad57a56fa8 (patch)
tree1bb3238acf14b6f6665ddafaf7d3e623da5da544 /contrib/gcclibs
parent4bda5ad442033e7431a147e520f5977706e24fa2 (diff)
downloadFreeBSD-src-b8648b775ac53e96f3a168ab937cc4ad57a56fa8.zip
FreeBSD-src-b8648b775ac53e96f3a168ab937cc4ad57a56fa8.tar.gz
MFC r258712;
libcpp: fix an underflow. Similar fix seen in Apple's gcc42. Obtained from: OpenBSD (Rev 1.2) MFC after: 2 weeks
Diffstat (limited to 'contrib/gcclibs')
-rw-r--r--contrib/gcclibs/libcpp/charset.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/contrib/gcclibs/libcpp/charset.c b/contrib/gcclibs/libcpp/charset.c
index 78c8981..6361f8c 100644
--- a/contrib/gcclibs/libcpp/charset.c
+++ b/contrib/gcclibs/libcpp/charset.c
@@ -1628,7 +1628,7 @@ _cpp_convert_input (cpp_reader *pfile, const char *input_charset,
terminate with another \r, not an \n, so that we do not mistake
the \r\n sequence for a single DOS line ending and erroneously
issue the "No newline at end of file" diagnostic. */
- if (to.text[to.len - 1] == '\r')
+ if (to.len > 0 && to.text[to.len - 1] == '\r')
to.text[to.len] = '\r';
else
to.text[to.len] = '\n';
OpenPOWER on IntegriCloud