Hi Günter and Carlo,

Sounds like it's related to the same problem mentioned in Günter's last
email.  A floating point value, when printed in a certain locale, uses a
comma as a decimal point instead of a comma.  In the state(...) line, this
creates an additional field since fields are separated by commas!  In the
script_frac(...) line, this is less serious since a script-fraction of 0
will be obtains.  Since 0 is an illegal script-fraction, nothing gets
changed.

I'm not sure exactly how to fix this bug since I'm not too familiar with the
localization stuff.  I thought the locale should be set correctly due to the
call to setlocale(LC_ALL, "C") in tgif.  But this code can be skipped if
-D_NO_LOCALE_SUPPORT compiler flag is used.  The _NO_LOCALE_SUPPORT compiler
flag should only be used on a system that does not have the setlocale()
function.  But anyone can just use -D_NO_LOCALE_SUPPORT to compile tgif.  Is
there a way you can find of if -D_NO_LOCALE_SUPPORT was used to compile
tgif?

--Bill


On Mon, Sep 6, 2010 at 1:39 PM, Günter Frenz <[email protected]> wrote:

> Hi,
>
> Am Mon, 6 Sep 2010 15:16:21 -0500 (CDT)
> schrieb Carlo Segre <[email protected]>:
>
> >
> > Hi Günter:
> >
> > On Mon, 6 Sep 2010, Günter Frenz wrote:
> >
> > >
> > > Yes, all three are installed. But the error message I just sent to
> > > you, suggests some problems with the fonts. Any idea where I can
> > > look for a solution? Ah, I forgot to attach the second file in my
> > > last mail, now it is...
> > >
> >
> > I think I have found the problem.  If you look at the test.obj file
> > itself, the second line is:
> >
> >
> state(0,37,100,000,0,0,0,16,1,9,1,1,0,0,1,0,1,0,'Courier',0,80640,0,0,1,5,0,0,1,1,0,16,0,0,1,1,1,1,1050,1450,1,0,2880,0).
> >
> > Now the files I have created with version 4.2.2 contain the following
> > second line:
> >
> >
> state(0,37,100.000,0,0,0,16,1,10,1,1,0,0,1,1,1,0,'Courier',0,138240,0,0,1,10,0,0,1,1,0,16,0,0,1,1,1,1,1050,1485,1,0,2880,0).
> >
> > If I put your line in my file, I have teh same segfault and if I put
> > my line in your file, it works fine.  I looked at the file very
> > carefully and the problem is in the third entry in parentheses, in
> > your file it is "100,000" but the correct value should be "100.000".
> > Clearly there is some problem with the way fixed point numbers are
> > formatted and written out to the file.  The comma instead of the
> > period confuses the issue.
>
> I checked this issue against the first reported error message: it is
> the same type of problem, with
>
> script_frac("0.6").
>
> the file is not opened correct and with
>
> script_frac("0,6").
>
> it is opened correct. So this looks like a problem with an
> international environment (here German) where comma and period are used
> in opposite way than in English.
>
> > I am not sure why this is happening at write time so i will forward
> > the message to the upstream author and maybe he can clarify the
> > situation.
> >
> > I am also putting this back into the bug report thread.
>
> Thanks so far,
>
> Günter
>
> --
> -------------------------------------------------------
> Günter Frenz
> Börschgasse 16a, D-51143 Köln
> (h) [email protected], (w) [email protected]
> -------------------------------------------------------
> Linux, Irix, Solaris, HP-UX
> -------------------------------------------------------
>
>
>

Reply via email to