[Lazarus] Debugging the rtl/fcl - segfault in sdfdataset
Luca Olivetti
luca at wetron.es
Wed Jul 15 18:26:09 CEST 2020
El 15/7/20 a les 17:31, Luca Olivetti via lazarus ha escrit:
> El 15/7/20 a les 17:20, Luca Olivetti via lazarus ha escrit:
>> Hello,
>>
>> something broke in sdfdataset with fpc 3.2.0 (a segfault that doesn't
>> occur if I compile the same program with fpc 3.0.4) and I'm trying to
>> debug it.
>>
>> First I tried to compile just the fcl with debug information
>>
>> cd fpc-3.2.0/packages
>> OPT=-gl make
>> sudo make install
[...]
>> Any hint?
The optimization! I had to use "-g -gl -O-" to get the full call stack.
>
> For the record, the segfault happens here
>
>
> #0 SYSGETMEM_FIXED(544) at ../inc/heap.inc:963
The memory is hosed, I still don't know why.
I managed to reproduce the problem with a simple lazarus program,
however a plain pascal program that does the same doesn't trigger the it.
I'm attaching the lazarus project as well as the simple pascal program
if somebody could look into it...
Bye
--
Luca Olivetti
Wetron Automation Technology http://www.wetron.es/
Tel. +34 93 5883004 (Ext.3010) Fax +34 93 5883007
-------------- next part --------------
program sdfsegfault;
{$R *.res}
uses Classes, sysutils,sdfdata;
procedure ClearData(dataset:TSdfDataset);
var st:TStringStream;
begin
st:=TStringStream.Create('');
dataset.LoadFromStream(st);
st.free;
end;
procedure LoadData(dataset:TSdfDataset);
var
x, f: Integer;
begin
for x:=1 to 10 do
begin
dataset.append;
for f:=0 to Dataset.Fields.Count-1 do
DataSet.Fields[f].AsString:='ABC';
DataSet.Post;
end;
end;
var ds:TSdfDataSet;
begin
ds:=TSdfDataSet.Create(nil);
with ds do
begin
FileMustExist:=true;
ReadOnly:=false;
Filename:='dummy';
Schema.Add('TMA');
Schema.Add('VISUALIZAR');
AllowMultiLine:=false;
Delimiter:=',';
FirstLineAsSchema:=False;
StripTrailingDelimiters:=False;
end;
ClearData(ds);
LoadData(ds);
ds.Free;
end.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: project1.zip
Type: application/zip
Size: 2836 bytes
Desc: not available
URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20200715/ed026930/attachment.zip>
More information about the lazarus
mailing list