You've already forked lazarus-ccr
RxFPC:fix filter without grid in TRxMemoryData
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@8927 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
@ -1050,22 +1050,28 @@ var
|
|||||||
RecBuf: PChar;
|
RecBuf: PChar;
|
||||||
begin
|
begin
|
||||||
Result := True;
|
Result := True;
|
||||||
if Assigned(OnFilterRecord) then
|
if Assigned(OnFilterRecord) or (Filter<>'') then
|
||||||
begin
|
begin
|
||||||
if (FRecordPos >= 0) and (FRecordPos < RecordCount) then
|
if (FRecordPos >= 0) and (FRecordPos < RecordCount) then
|
||||||
begin
|
begin
|
||||||
SaveState := SetTempState(dsFilter);
|
SaveState := SetTempState(dsFilter);
|
||||||
try
|
|
||||||
RecordToBuffer(Records[FRecordPos], TempBuffer);
|
if Assigned(OnFilterRecord) then
|
||||||
OnFilterRecord(Self, Result);
|
begin
|
||||||
except
|
try
|
||||||
CustomApplication.HandleException(Self);
|
RecordToBuffer(Records[FRecordPos], TempBuffer);
|
||||||
|
OnFilterRecord(Self, Result);
|
||||||
|
except
|
||||||
|
CustomApplication.HandleException(Self);
|
||||||
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
if Result and (Length(Filter) > 0) then
|
if Result and (Length(Filter) > 0) then
|
||||||
begin
|
begin
|
||||||
if GetActiveRecBuf(RecBuf) then
|
{ if GetActiveRecBuf(RecBuf) then
|
||||||
Result := Boolean((FParser.ExtractFromBuffer(RecBuf))^);
|
Result := Boolean((FParser.ExtractFromBuffer(RecBuf))^);}
|
||||||
|
RecordToBuffer(Records[FRecordPos], TempBuffer);
|
||||||
|
Result := Boolean((FParser.ExtractFromBuffer(TempBuffer))^);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
RestoreState(SaveState);
|
RestoreState(SaveState);
|
||||||
|
Reference in New Issue
Block a user