* Make dictionary constructor behave as Delphi does in absence of comparer

This commit is contained in:
Michaël Van Canneyt 2023-11-22 16:29:33 +01:00
parent 63237dd375
commit 45cb7d1eff

View File

@ -1059,7 +1059,11 @@ constructor TOpenAddressingDH<OPEN_ADDRESSING_CONSTRAINTS>.Create(ACapacity: Siz
const AComparer: IExtendedEqualityComparer<TKey>);
begin
FMaxLoadFactor := TProbeSequence.DEFAULT_LOAD_FACTOR;
FEqualityComparer := AComparer;
// Delphi creates one if you pass nil...
if aComparer=Nil then
FEqualityComparer := TExtendedEqualityComparer<TKey>.Default(THashFactory)
else
FEqualityComparer := AComparer;
SetCapacity(ACapacity);
end;