Module: wine Branch: master Commit: 458a39051dd8cd81ee23febb9c07d2669bc56e11 URL: http://source.winehq.org/git/wine.git/?a=commit;h=458a39051dd8cd81ee23febb9c...
Author: Piotr Caban piotr@codeweavers.com Date: Thu Oct 4 13:16:04 2012 +0200
msvcp60: Handle differences in basic_string::c_str function behavior on empty strings.
---
dlls/msvcp60/locale.c | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/dlls/msvcp60/locale.c b/dlls/msvcp60/locale.c index 17c754d..0cc3807 100644 --- a/dlls/msvcp60/locale.c +++ b/dlls/msvcp60/locale.c @@ -5101,7 +5101,7 @@ static int num_get_char__Getffld(const num_get *this, char *dest, istreambuf_ite
numpunct_char_grouping(numpunct, &grouping_bstr); grouping = basic_string_char_c_str(&grouping_bstr); - sep = grouping[0] ? numpunct_char_thousands_sep(numpunct) : '\0'; + sep = grouping ? numpunct_char_thousands_sep(numpunct) : '\0';
istreambuf_iterator_char_val(first); if(first->strbuf && (first->val=='-' || first->val=='+')) { @@ -5258,7 +5258,7 @@ static int num_get_char__Getifld(const num_get *this, char *dest, istreambuf_ite
numpunct_char_grouping(numpunct, &grouping_bstr); grouping = basic_string_char_c_str(&grouping_bstr); - sep = grouping[0] ? numpunct_char_thousands_sep(numpunct) : '\0'; + sep = grouping ? numpunct_char_thousands_sep(numpunct) : '\0';
basefield = fmtflags & FMTFLAG_basefield; if(basefield == FMTFLAG_oct) @@ -6007,7 +6007,7 @@ static ostreambuf_iterator_char* num_put_char_fput(const num_put *this, ostreamb /* Add separators to number */ numpunct_char_grouping(numpunct, &grouping_bstr); grouping = basic_string_char_c_str(&grouping_bstr); - sep = grouping[0] ? numpunct_char_thousands_sep(numpunct) : '\0'; + sep = grouping ? numpunct_char_thousands_sep(numpunct) : '\0';
for(; p>buf && sep && grouping[cur_group]!=CHAR_MAX; p--) { group_size++; @@ -6090,7 +6090,7 @@ static ostreambuf_iterator_char* num_put_char__Iput(const num_put *this, ostream /* Add separators to number */ numpunct_char_grouping(numpunct, &grouping_bstr); grouping = basic_string_char_c_str(&grouping_bstr); - sep = grouping[0] ? numpunct_char_thousands_sep(numpunct) : '\0'; + sep = grouping ? numpunct_char_thousands_sep(numpunct) : '\0';
for(p=buf+count-1; p>buf && sep && grouping[cur_group]!=CHAR_MAX; p--) { group_size++;