[fpc-devel] gtk2 bugfix gfloat
Florian Klaempfl
florian at freepascal.org
Wed Jun 15 13:10:00 CEST 2005
Mattias Gaertner wrote:
> On Wed, 15 Jun 2005 09:20:48 +0200
> Micha Nelissen <micha at neli.hopto.org> wrote:
>
>
>>On Tue, 14 Jun 2005 23:33:17 +0200
>>Mattias Gaertner <nc-gaertnma at netcologne.de> wrote:
>>
>>
>>>On Tue, 14 Jun 2005 22:34:19 +0200
>>>Micha Nelissen <micha at neli.hopto.org> wrote:
>>>
>>>
>>>>On Tue, 14 Jun 2005 22:11:40 +0200
>>>>Mattias Gaertner <nc-gaertnma at netcologne.de> wrote:
>>>>
>>>>
>>>>>A c float is a fpc single, right?
>>
>>So why did you do:
>>
>>- {$IFDEF KYLIX}
>>- gfloat = single; // Don't know why, but some routines requires
>>this - {$ELSE}
>>- gfloat = double;
>>- {$ENDIF}
>>+ gfloat = double;
>>
>>If you weren't using KYLIX, nothing has changed :S, shouldn't that be:
>>
>>+ gfloat = single;
>>
>>?
>
>
> You are right, I'm right, but my patch was insufficient.
> Of course it must be single.
>
> Marko Peric pointed me to a strange bug with some gtk2 examples translated
> to pascal. After some debugging I saw, that with double it doesn't work, but
> with single it works. According to the gtk2 sources and docs, gfloat must be
> a c float. So definitely double is wrong and single works in my test cases.
> I tested it with gtk2forpascal. But at the moment I have some trouble
> building fpc and its rpms. Maybe the gfloat bug explains some of the strange
> lazarus gtk2 interface bugs.
> The reason, why this bug was not spotted before, is that the gtk2 always
> bounds all gfloat input. This results in most cases to no effect, not even a
> warning.
Changed again. The correct solution would be imo to use the ctypes unit and make
it a cfloat. Mattias, afaik you've write permissions to the fpc repository so
you can do further changes to the gtk2 interface units yourself :)
More information about the fpc-devel
mailing list