[Lazarus] Debugging the rtl/fcl - segfault in sdfdataset

Michael Van Canneyt michael at freepascal.org
Fri Jul 17 10:26:17 CEST 2020



On Fri, 17 Jul 2020, Luca Olivetti wrote:

> El 17/7/20 a les 9:51, Michael Van Canneyt ha escrit:
>
>>>> I reported it here
>>>> 
>>>> https://bugs.freepascal.org/view.php?id=37370
>>> 
>>> I found that reverting
>>> 
>>> https://svn.freepascal.org/cgi-bin/viewvc.cgi?view=revision&revision=43245 
>>> 
>>> (in fact I just took sdfdata.pp from 3.0.4)
>>> 
>>> fixes the segfault.
>>> 
>>> Michael, what do you think?
>> 
>> Seems like a bug somewhere. I'll need to look at it. Probably has something
>> to do with the default codepage: Lazarus changes that.
>
> What worries me is the fact that it is so easy to mess up the heap. What 
> other dragons are lurking ahead in 3.2.0?

Looking at the bugtracker, there could be several. 
I think we may need to release a 3.2.2 after a relatively short amount of time.

> For the record, I tried to set the codepage of the component to 'utf-8' and 
> it still segfaults, so I don't think it's because of the default codepage.

We'll see. 
This is the only relevant change in the component, so that is the most likely candidate.
What is more puzzling is that it only happens in Lazarus.

> Also the fact that some of the TFieldDefs.Add are procedure and some 
> functions doesn't seem right.

They are simply overloaded versions, but all boil down to the same. 
Some of these exist for Delphi compatibility. I doubt this is the cause.

Michael.


More information about the lazarus mailing list