[fpc-pascal] Bufdataset TCustomBufDataset.InternalOpen; swallowing filter construction

Reinier Olislagers reinierolislagers at gmail.com
Mon Feb 4 13:17:58 CET 2013


On 4-2-2013 11:41, Michael Van Canneyt wrote:
> On Mon, 4 Feb 2013, Reinier Olislagers wrote:
>> Hi list,
>>
>> In sqldb bufdataset.pas, going through the code looking through the
>> comments, this code caught my eye (around line 1164):
>> procedure TCustomBufDataset.InternalOpen;
>> ...
>>  // parse filter expression
>>  try
>>    ParseFilter(Filter);
>>  except
>>    // oops, a problem with parsing, clear filter for now
>>    on E: Exception do Filter := EmptyStr;
>>  end;
>>
>> seems to swallow problems with parsing filter expressions.
>>
>> Shouldn't the exception bubble up though so the user is notified? If the
>> filter is not correct, e.g. showing all data instead of what the user
>> wanted seems a bit weird..
> 
> I think it should indeed bubble up.

Applied in r23570
Removed the try..except entirely; the old Filter:=EmptyStr hardly helps
with troubleshooting...

dbtestframework bufdataset test count remains same:
N:156 E:40 F:11 I:0
Any tests with filter in the name work as before


Thanks,
Reinier



More information about the fpc-pascal mailing list