summaryrefslogtreecommitdiffstats
path: root/contrib/libstdc++/include/bits/locale_facets.tcc
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/libstdc++/include/bits/locale_facets.tcc')
-rw-r--r--contrib/libstdc++/include/bits/locale_facets.tcc6
1 files changed, 3 insertions, 3 deletions
diff --git a/contrib/libstdc++/include/bits/locale_facets.tcc b/contrib/libstdc++/include/bits/locale_facets.tcc
index 9ad4dfe..2563a95 100644
--- a/contrib/libstdc++/include/bits/locale_facets.tcc
+++ b/contrib/libstdc++/include/bits/locale_facets.tcc
@@ -1099,12 +1099,12 @@ namespace std
string_type __str;
__beg = this->do_get(__beg, __end, __intl, __io, __err, __str);
- const int __n = numeric_limits<long double>::digits10;
- char* __cs = static_cast<char*>(__builtin_alloca(__n));
+ const int __cs_size = __str.size() + 1;
+ char* __cs = static_cast<char*>(__builtin_alloca(__cs_size));
const locale __loc = __io.getloc();
const ctype<_CharT>& __ctype = use_facet<ctype<_CharT> >(__loc);
const _CharT* __wcs = __str.c_str();
- __ctype.narrow(__wcs, __wcs + __str.size() + 1, char(), __cs);
+ __ctype.narrow(__wcs, __wcs + __cs_size, char(), __cs);
__convert_to_v(__cs, __units, __err, _S_c_locale);
return __beg;
}
OpenPOWER on IntegriCloud