Ticket #2: locale.patch

File locale.patch, 11.4 KB (added by dmc, 2 years ago)
  • gcc/gcc-4.2.1/intl/localename.c

    diff -urN src-original/gcc/gcc-4.2.1/intl/localename.c src-crystax/gcc/gcc-4.2.1/intl/localename.c
    old new  
    393393     On some systems this can be done by the 'setlocale' function itself.  */ 
    394394# if defined HAVE_SETLOCALE && defined HAVE_LC_MESSAGES && defined HAVE_LOCALE_NULL 
    395395  retval = setlocale (category, NULL); 
     396  if (retval == NULL || retval[0] == '\0') 
     397    retval = "C"; 
    396398# else 
    397399  /* Setting of LC_ALL overwrites all other.  */ 
    398400  retval = getenv ("LC_ALL"); 
  • gcc/gcc-4.2.1/libstdc++-v3/config/locale/generic/c_locale.h

    diff -urN src-original/gcc/gcc-4.2.1/libstdc++-v3/config/locale/generic/c_locale.h src-crystax/gcc/gcc-4.2.1/libstdc++-v3/config/locale/generic/c_locale.h
    old new  
    6565                   const char* __fmt, ...) 
    6666  { 
    6767    char* __old = std::setlocale(LC_NUMERIC, NULL); 
     68    if (__old == NULL || __old[0] == '\0') 
     69      __old = "C"; 
    6870    char* __sav = NULL; 
    6971    if (std::strcmp(__old, "C")) 
    7072      { 
  • gcc/gcc-4.2.1/libstdc++-v3/config/locale/gnu/c_locale.h

    diff -urN src-original/gcc/gcc-4.2.1/libstdc++-v3/config/locale/gnu/c_locale.h src-crystax/gcc/gcc-4.2.1/libstdc++-v3/config/locale/gnu/c_locale.h
    old new  
    8282    __c_locale __old = __gnu_cxx::__uselocale(__cloc); 
    8383#else 
    8484    char* __old = std::setlocale(LC_ALL, NULL); 
     85    if (__old == NULL || __old[0] == '\0') 
     86      __old = "C"; 
    8587    char* __sav = new char[std::strlen(__old) + 1]; 
    8688    std::strcpy(__sav, __old); 
    8789    std::setlocale(LC_ALL, "C"); 
  • gcc/gcc-4.4.0/intl/localename.c

    diff -urN src-original/gcc/gcc-4.4.0/intl/localename.c src-crystax/gcc/gcc-4.4.0/intl/localename.c
    old new  
    393393     On some systems this can be done by the 'setlocale' function itself.  */ 
    394394# if defined HAVE_SETLOCALE && defined HAVE_LC_MESSAGES && defined HAVE_LOCALE_NULL 
    395395  retval = setlocale (category, NULL); 
     396  if (retval == NULL || retval[0] == '\0') 
     397    retval = "C"; 
    396398# else 
    397399  /* Setting of LC_ALL overwrites all other.  */ 
    398400  retval = getenv ("LC_ALL"); 
  • gcc/gcc-4.4.0/libstdc++-v3/config/locale/generic/c_locale.cc

    diff -urN src-original/gcc/gcc-4.4.0/libstdc++-v3/config/locale/generic/c_locale.cc src-crystax/gcc/gcc-4.4.0/libstdc++-v3/config/locale/generic/c_locale.cc
    old new  
    5151    { 
    5252      // Assumes __s formatted for "C" locale. 
    5353      char* __old = setlocale(LC_ALL, NULL); 
     54      if (__old == NULL || __old[0] == '\0') 
     55        __old = "C"; 
    5456      const size_t __len = strlen(__old) + 1; 
    5557      char* __sav = new char[__len]; 
    5658      memcpy(__sav, __old, __len); 
     
    116118    { 
    117119      // Assumes __s formatted for "C" locale. 
    118120      char* __old = setlocale(LC_ALL, NULL); 
     121      if (__old == NULL || __old[0] == '\0') 
     122        __old = "C"; 
    119123      const size_t __len = strlen(__old) + 1; 
    120124      char* __sav = new char[__len]; 
    121125      memcpy(__sav, __old, __len); 
     
    161165    { 
    162166      // Assumes __s formatted for "C" locale. 
    163167      char* __old = setlocale(LC_ALL, NULL); 
     168      if (__old == NULL || __old[0] == '\0') 
     169        __old = "C"; 
    164170      const size_t __len = strlen(__old) + 1; 
    165171      char* __sav = new char[__len]; 
    166172      memcpy(__sav, __old, __len); 
  • gcc/gcc-4.4.0/libstdc++-v3/config/locale/generic/c_locale.h

    diff -urN src-original/gcc/gcc-4.4.0/libstdc++-v3/config/locale/generic/c_locale.h src-crystax/gcc/gcc-4.4.0/libstdc++-v3/config/locale/generic/c_locale.h
    old new  
    5858                   const char* __fmt, ...) 
    5959  { 
    6060    char* __old = std::setlocale(LC_NUMERIC, NULL); 
     61    if (__old == NULL || __old[0] == '\0') 
     62      __old = "C"; 
    6163    char* __sav = NULL; 
    6264    if (__builtin_strcmp(__old, "C")) 
    6365      { 
  • gcc/gcc-4.4.0/libstdc++-v3/config/locale/generic/time_members.cc

    diff -urN src-original/gcc/gcc-4.4.0/libstdc++-v3/config/locale/generic/time_members.cc src-crystax/gcc/gcc-4.4.0/libstdc++-v3/config/locale/generic/time_members.cc
    old new  
    4343           const tm* __tm) const 
    4444    { 
    4545      char* __old = setlocale(LC_ALL, NULL); 
     46      if (__old == NULL || __old[0] == '\0') 
     47        __old = "C"; 
    4648      const size_t __llen = strlen(__old) + 1; 
    4749      char* __sav = new char[__llen]; 
    4850      memcpy(__sav, __old, __llen); 
     
    128130           const tm* __tm) const 
    129131    { 
    130132      char* __old = setlocale(LC_ALL, NULL); 
     133      if (__old == NULL || __old[0] == '\0') 
     134        __old = "C"; 
    131135      const size_t __llen = strlen(__old) + 1; 
    132136      char* __sav = new char[__llen]; 
    133137      memcpy(__sav, __old, __llen); 
  • gcc/gcc-4.4.0/libstdc++-v3/config/locale/gnu/c_locale.h

    diff -urN src-original/gcc/gcc-4.4.0/libstdc++-v3/config/locale/gnu/c_locale.h src-crystax/gcc/gcc-4.4.0/libstdc++-v3/config/locale/gnu/c_locale.h
    old new  
    7272    __c_locale __old = __gnu_cxx::__uselocale(__cloc); 
    7373#else 
    7474    char* __old = std::setlocale(LC_NUMERIC, NULL); 
     75    if (__old == NULL || __old[0] == '\0') 
     76      __old = "C"; 
    7577    char* __sav = NULL; 
    7678    if (__builtin_strcmp(__old, "C")) 
    7779      { 
  • gcc/gcc-4.4.0/libstdc++-v3/config/locale/gnu/messages_members.cc

    diff -urN src-original/gcc/gcc-4.4.0/libstdc++-v3/config/locale/gnu/messages_members.cc src-crystax/gcc/gcc-4.4.0/libstdc++-v3/config/locale/gnu/messages_members.cc
    old new  
    4545      return string(__msg); 
    4646#else 
    4747      char* __old = setlocale(LC_ALL, NULL); 
     48      if (__old == NULL || __old[0] == '\0') 
     49        __old = "C"; 
    4850      const size_t __len = strlen(__old) + 1; 
    4951      char* __sav = new char[__len]; 
    5052      memcpy(__sav, __old, __len); 
     
    6870      return _M_convert_from_char(__msg); 
    6971# else 
    7072      char* __old = setlocale(LC_ALL, NULL); 
     73      if (__old == NULL || __old[0] == '\0') 
     74        __old = "C"; 
    7175      const size_t __len = strlen(__old) + 1; 
    7276      char* __sav = new char[__len]; 
    7377      memcpy(__sav, __old, __len); 
  • gcc/gcc-4.4.0/libstdc++-v3/config/locale/gnu/monetary_members.cc

    diff -urN src-original/gcc/gcc-4.4.0/libstdc++-v3/config/locale/gnu/monetary_members.cc src-crystax/gcc/gcc-4.4.0/libstdc++-v3/config/locale/gnu/monetary_members.cc
    old new  
    428428#else 
    429429          // Switch to named locale so that mbsrtowcs will work. 
    430430          char* __old = setlocale(LC_ALL, NULL); 
     431    if (__old == NULL || __old[0] == '\0') 
     432      __old = "C"; 
    431433          const size_t __llen = strlen(__old) + 1; 
    432434          char* __sav = new char[__llen]; 
    433435          memcpy(__sav, __old, __llen); 
     
    596598#else 
    597599          // Switch to named locale so that mbsrtowcs will work. 
    598600          char* __old = setlocale(LC_ALL, NULL); 
     601    if (__old == NULL || __old[0] == '\0') 
     602      __old = "C"; 
    599603          const size_t __llen = strlen(__old) + 1; 
    600604          char* __sav = new char[__llen]; 
    601605          memcpy(__sav, __old, __llen); 
  • gcc/gcc-4.4.0/libstdc++-v3/config/locale/gnu/time_members.cc

    diff -urN src-original/gcc/gcc-4.4.0/libstdc++-v3/config/locale/gnu/time_members.cc src-crystax/gcc/gcc-4.4.0/libstdc++-v3/config/locale/gnu/time_members.cc
    old new  
    4646                                        _M_c_locale_timepunct); 
    4747#else 
    4848      char* __old = setlocale(LC_ALL, NULL); 
     49      if (__old == NULL || __old == '\0') 
     50        __old = "C"; 
    4951      const size_t __llen = strlen(__old) + 1;   
    5052      char* __sav = new char[__llen]; 
    5153      memcpy(__sav, __old, __llen); 
     
    202204                                        _M_c_locale_timepunct); 
    203205#else 
    204206      char* __old = setlocale(LC_ALL, NULL); 
     207      if (__old == NULL || __old[0] == '\0') 
     208        __old = "C"; 
    205209      const size_t __llen = strlen(__old) + 1; 
    206210      char* __sav = new char[__llen]; 
    207211      memcpy(__sav, __old, __llen); 
  • gcc/gcc-4.4.0/libstdc++-v3/config/os/gnu-linux/ctype_noninline.h

    diff -urN src-original/gcc/gcc-4.4.0/libstdc++-v3/config/os/gnu-linux/ctype_noninline.h src-crystax/gcc/gcc-4.4.0/libstdc++-v3/config/os/gnu-linux/ctype_noninline.h
    old new  
    4545  { 
    4646    const ctype_base::mask* __ret; 
    4747    char* __old = setlocale(LC_CTYPE, NULL); 
     48    if (__old == NULL || __old[0] == '\0') 
     49      __old = "C"; 
    4850    char* __sav = NULL; 
    4951    if (__builtin_strcmp(__old, "C")) 
    5052      { 
     
    8789  _M_del(__table != 0 && __del), _M_widen_ok(0), _M_narrow_ok(0) 
    8890  { 
    8991    char* __old = setlocale(LC_CTYPE, NULL); 
     92    if (__old == NULL || __old[0] == '\0') 
     93      __old = "C"; 
    9094    char* __sav = NULL; 
    9195    if (__builtin_strcmp(__old, "C")) 
    9296      {     
     
    132136  _M_del(__table != 0 && __del), _M_widen_ok(0), _M_narrow_ok(0) 
    133137  { 
    134138    char* __old = setlocale(LC_CTYPE, NULL); 
     139    if (__old == NULL || __old[0] == '\0') 
     140      __old = "C"; 
    135141    char* __sav = NULL; 
    136142    if (__builtin_strcmp(__old, "C")) 
    137143      { 
  • gcc/gcc-4.4.0/libstdc++-v3/config/os/tpf/ctype_noninline.h

    diff -urN src-original/gcc/gcc-4.4.0/libstdc++-v3/config/os/tpf/ctype_noninline.h src-crystax/gcc/gcc-4.4.0/libstdc++-v3/config/os/tpf/ctype_noninline.h
    old new  
    3838  { 
    3939    const ctype_base::mask* __ret; 
    4040    char* __old = setlocale(LC_CTYPE, NULL); 
     41    if (__old == NULL || __old[0] == '\0') 
     42      __old = "C"; 
    4143    const size_t __len = __builtin_strlen(__old) + 1; 
    4244    char* __sav = new char[__len]; 
    4345    __builtin_memcpy(__sav, __old, __len); 
     
    5355  : facet(__refs), _M_del(__table != 0 && __del) 
    5456  { 
    5557    char* __old = setlocale(LC_CTYPE, NULL); 
     58    if (__old == NULL || __old[0] == '\0') 
     59      __old = "C"; 
    5660    const size_t __len = __builtin_strlen(__old) + 1; 
    5761    char* __sav = new char[__len]; 
    5862    __builtin_memcpy(__sav, __old, __len); 
     
    6973  : facet(__refs), _M_del(__table != 0 && __del) 
    7074  { 
    7175    char* __old = setlocale(LC_CTYPE, NULL); 
     76    if (__old == NULL || __old[0] == '\0') 
     77      __old = "C"; 
    7278    const size_t __len = __builtin_strlen(__old) + 1; 
    7379    char* __sav = new char[__len]; 
    7480    __builtin_memcpy(__sav, __old, __len);