[haiku-bugs] Re: [Haiku] #6581: Crash in ICUNumericData::Initialize()

  • From: "zooey" <trac@xxxxxxxxxxxx>
  • Date: Sat, 11 Sep 2010 13:23:39 -0000

#6581: Crash in ICUNumericData::Initialize()
------------------------------+---------------------------------------------
  Reporter:  kaliber          |         Owner:  zooey         
      Type:  bug              |        Status:  in-progress   
  Priority:  normal           |     Milestone:  R1            
 Component:  Kits/Locale Kit  |       Version:  R1/Development
Resolution:                   |      Keywords:  clang         
Blocked By:                   |   Has a Patch:  0             
  Platform:  All              |      Blocking:                
------------------------------+---------------------------------------------

Comment (by zooey):

 Replying to [ticket:6581 kaliber]:
 [ ... ]
 >
 > Shouldn't it be dataBridge instead of *dataBridge?

 No, since it's actually *dataBridge->addrOfGlibcDecimalPoint, so the code
 is trying to set a char* pointer by dereferencing a char**.

 The problem seems to be that the code relies on global objects being
 initialized in a specific order and that clang picks a different order. In
 this specific case, the constructor of LocaleNumericDataBridge relies on
 glibc's _nl_C_LC_NUMERIC to be set up already. I'm trying to find a way
 around that ...

-- 
Ticket URL: <http://dev.haiku-os.org/ticket/6581#comment:2>
Haiku <http://dev.haiku-os.org>
Haiku - the operating system.

Other related posts: