diff options
-rw-r--r-- | libstdc++-v3/ChangeLog | 5 | ||||
-rw-r--r-- | libstdc++-v3/src/locale.cc | 8 |
2 files changed, 9 insertions, 4 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index c53f885..7b0f83f 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,5 +1,10 @@ 2003-10-16 Paolo Carlini <pcarlini@suse.de> + * src/locale.cc (locale::locale(const char*)): Tweak + a couple of comparisons to use basic_string operators. + +2003-10-16 Paolo Carlini <pcarlini@suse.de> + PR libstdc++/12540 * config/locale/gnu/monetary_members.cc (moneypunct<wchar_t, true/false>::_M_initialize_moneypunct): diff --git a/libstdc++-v3/src/locale.cc b/libstdc++-v3/src/locale.cc index 12f77e1..c652540 100644 --- a/libstdc++-v3/src/locale.cc +++ b/libstdc++-v3/src/locale.cc @@ -221,21 +221,21 @@ namespace std // Scan the categories looking for the first one // different from LANG. size_t __i = 0; - if (std::strcmp(__res.c_str(), "C") == 0) + if (__res == "C") for (; __i < _S_categories_size; ++__i) { __env = std::getenv(_S_categories[__i]); if (__env && std::strcmp(__env, "") != 0 && std::strcmp(__env, "C") != 0 - && std::strcmp(__env, "POSIX") != 0) + && std::strcmp(__env, "POSIX") != 0) break; } else for (; __i < _S_categories_size; ++__i) { __env = std::getenv(_S_categories[__i]); - if (__env && std::strcmp(__env, "") != 0 - && std::strcmp(__env, __res.c_str()) != 0) + if (__env && std::strcmp(__env, "") != 0 + && __res != __env) break; } |