aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Sandiford <rsandifo@redhat.com>2004-02-24 20:49:40 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2004-02-24 20:49:40 +0000
commit212063a8446bfacef005a5060d7d316a763a7862 (patch)
tree68fa410cf0a6a35545f4adf11b1c6eec56db4b9a
parentabe57d38fc099f4df237a9597f6a79c29dd4f4e9 (diff)
downloadgcc-212063a8446bfacef005a5060d7d316a763a7862.zip
gcc-212063a8446bfacef005a5060d7d316a763a7862.tar.gz
gcc-212063a8446bfacef005a5060d7d316a763a7862.tar.bz2
locale_facets.tcc (num_get::_M_extract_int): Fix bounds error in handling of hex constants.
* include/bits/locale_facets.tcc (num_get::_M_extract_int): Fix bounds error in handling of hex constants. From-SVN: r78385
-rw-r--r--libstdc++-v3/ChangeLog5
-rw-r--r--libstdc++-v3/include/bits/locale_facets.tcc2
2 files changed, 6 insertions, 1 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 975ae63..2b87092 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,8 @@
+2004-02-24 Richard Sandiford <rsandifo@redhat.com>
+
+ * include/bits/locale_facets.tcc (num_get::_M_extract_int): Fix bounds
+ error in handling of hex constants.
+
2004-02-24 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (money_put<>::_M_insert):
diff --git a/libstdc++-v3/include/bits/locale_facets.tcc b/libstdc++-v3/include/bits/locale_facets.tcc
index cf01602..c9e1e7f 100644
--- a/libstdc++-v3/include/bits/locale_facets.tcc
+++ b/libstdc++-v3/include/bits/locale_facets.tcc
@@ -391,7 +391,7 @@ namespace std
// At this point, base is determined. If not hex, only allow
// base digits as valid input.
- const size_t __len = __base == 16 ? _S_iend : __base;
+ const size_t __len = __base == 16 ? _S_iend - _S_izero : __base;
// Extract.
string __found_grouping;