summaryrefslogtreecommitdiffstats
path: root/libstdc++-v3
diff options
context:
space:
mode:
Diffstat (limited to 'libstdc++-v3')
-rw-r--r--libstdc++-v3/ChangeLog6
-rw-r--r--libstdc++-v3/src/localename.cc36
2 files changed, 22 insertions, 20 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index a172a661282..560c5327ac4 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,9 @@
+2004-09-24 Paolo Carlini <pcarlini@suse.de>
+
+ * src/localename.cc (locale::locale(const char*)): Minor tweaks:
+ rename a variable, move an assignment.
+ (locale::_Impl::_Impl(const char*, size_t)): Likewise, minor tweak.
+
2004-09-24 Paul Brook <paul@codesourcery.com>
* testsuite/27_io/basic_filebuf/sgetn/char/1-in.cc: XFAIL more arm
diff --git a/libstdc++-v3/src/localename.cc b/libstdc++-v3/src/localename.cc
index f9c7a82f096..f6f961fbca0 100644
--- a/libstdc++-v3/src/localename.cc
+++ b/libstdc++-v3/src/localename.cc
@@ -59,19 +59,19 @@ namespace std
else
{
// LANG may set a default different from "C".
- string __res;
- char* __env = std::getenv("LANG");
+ string __lang;
+ __env = std::getenv("LANG");
if (!__env || std::strcmp(__env, "") == 0
|| std::strcmp(__env, "C") == 0
|| std::strcmp(__env, "POSIX") == 0)
- __res = "C";
+ __lang = "C";
else
- __res = __env;
+ __lang = __env;
// Scan the categories looking for the first one
// different from LANG.
size_t __i = 0;
- if (__res == "C")
+ if (__lang == "C")
for (; __i < _S_categories_size; ++__i)
{
__env = std::getenv(_S_categories[__i]);
@@ -85,7 +85,7 @@ namespace std
{
__env = std::getenv(_S_categories[__i]);
if (__env && std::strcmp(__env, "") != 0
- && __res != __env)
+ && __lang != __env)
break;
}
@@ -99,33 +99,29 @@ namespace std
{
__str += _S_categories[__j];
__str += '=';
- __str += __res;
+ __str += __lang;
__str += ';';
}
__str += _S_categories[__i];
__str += '=';
__str += __env;
__str += ';';
- __i++;
+ ++__i;
for (; __i < _S_categories_size; ++__i)
{
__env = std::getenv(_S_categories[__i]);
+ __str += _S_categories[__i];
if (!__env || std::strcmp(__env, "") == 0)
{
- __str += _S_categories[__i];
__str += '=';
- __str += __res;
+ __str += __lang;
__str += ';';
}
else if (std::strcmp(__env, "C") == 0
|| std::strcmp(__env, "POSIX") == 0)
- {
- __str += _S_categories[__i];
- __str += "=C;";
- }
+ __str += "=C;";
else
{
- __str += _S_categories[__i];
__str += '=';
__str += __env;
__str += ';';
@@ -136,10 +132,10 @@ namespace std
}
// ... otherwise either an additional instance of
// the "C" locale or LANG.
- else if (__res == "C")
+ else if (__lang == "C")
(_M_impl = _S_classic)->_M_add_reference();
else
- _M_impl = new _Impl(__res.c_str(), 1);
+ _M_impl = new _Impl(__lang.c_str(), 1);
}
}
}
@@ -179,9 +175,9 @@ namespace std
// Construct named _Impl.
locale::_Impl::
- _Impl(const char* __s, size_t __refs)
+ _Impl(const char* __s, size_t __refs)
: _M_refcount(__refs), _M_facets(0), _M_facets_size(_GLIBCXX_NUM_FACETS),
- _M_caches(0), _M_names(0)
+ _M_caches(0), _M_names(0)
{
// Initialize the underlying locale model, which also checks to
// see if the given name is valid.
@@ -202,7 +198,7 @@ namespace std
// Name the categories.
const size_t __len = std::strlen(__s);
- if (!std::strchr(__s, ';'))
+ if (!std::memchr(__s, ';', __len))
{
_M_names[0] = new char[__len + 1];
std::memcpy(_M_names[0], __s, __len + 1);
OpenPOWER on IntegriCloud