ECCC-MSC / libecbufr

libecbufr is a general purpose, template-oriented BUFR encoding/decoding library
Other
10 stars 7 forks source link

dump file may be unreadable by bufr_encoder when LC_ALL is defined #38

Open vsouvan opened 4 years ago

vsouvan commented 4 years ago

When internationalisation is in use, i.e. defining LC_ALL to other language than english. The dump file will contains printed values that are also internationalized, i.e. all fractions are formatted differently. For example, in english 1.234 but in french, it would be 1,234, etc... Currently, the character "," is used as a delimiter in the parser, with some modifications, it is possible to read back printed string if LC_ALL is defined to use the same language. However that will still break the encoder if dump file were not created in the same language as the encoder, and this will make things really complicated.


Imported from Launchpad using lp2gh.

vsouvan commented 4 years ago

(by vanh-souvanlasy) Solution is to force all dump file to be created in english only and to force re-encoding in english also. Changes were done throught bufr_decoder.c and bufr_encoder.c by setting LC_ALL=en_US before enabling internationalisation. commited to trunk rev.149 and to branch 0.8.2 rev.108