From 9abc13aff18ef6aab749830c8831e8243a5630a7 Mon Sep 17 00:00:00 2001 From: joost Date: Sun, 11 Jan 2009 13:41:46 +0000 Subject: [PATCH] * Lookup should return an empty variant instead of false in case of failure (+test) git-svn-id: trunk@12538 - --- .gitattributes | 1 + packages/fcl-db/src/base/dataset.inc | 2 +- tests/test/packages/fcl-db/tdb5.pp | 20 ++++++++++++++++++++ 3 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 tests/test/packages/fcl-db/tdb5.pp diff --git a/.gitattributes b/.gitattributes index e2ce130409..5f6c5ac414 100644 --- a/.gitattributes +++ b/.gitattributes @@ -7672,6 +7672,7 @@ tests/test/packages/fcl-db/tdb1.pp svneol=native#text/plain tests/test/packages/fcl-db/tdb2.pp svneol=native#text/plain tests/test/packages/fcl-db/tdb3.pp svneol=native#text/plain tests/test/packages/fcl-db/tdb4.pp svneol=native#text/plain +tests/test/packages/fcl-db/tdb5.pp svneol=native#text/plain tests/test/packages/fcl-db/toolsunit.pas svneol=native#text/plain tests/test/packages/fcl-registry/tregistry1.pp svneol=native#text/plain tests/test/packages/hash/tmdtest.pp svneol=native#text/plain diff --git a/packages/fcl-db/src/base/dataset.inc b/packages/fcl-db/src/base/dataset.inc index 27304a0a31..5d5843cf91 100644 --- a/packages/fcl-db/src/base/dataset.inc +++ b/packages/fcl-db/src/base/dataset.inc @@ -2294,7 +2294,7 @@ Function TDataset.Lookup(const KeyFields: string; const KeyValues: Variant; cons begin CheckBiDirectional; - Result := False; + Result := Null; end; diff --git a/tests/test/packages/fcl-db/tdb5.pp b/tests/test/packages/fcl-db/tdb5.pp new file mode 100644 index 0000000000..af81584687 --- /dev/null +++ b/tests/test/packages/fcl-db/tdb5.pp @@ -0,0 +1,20 @@ +program LookupIsNull; + +uses db, memds, variants; + +var + DSet:TMemDataset; + tmpVariant:Variant; + +begin + DSet:=TMemDataset.Create(nil); + DSet.FieldDefs.Add('NAME',ftString,20); + DSet.CreateTable; + DSet.Open; + + tmpVariant:=DSet.Lookup('NAME','aaaa','NAME'); + if not (VarIsNull(tmpVariant)) then + Halt(1); + DSet.Close; + DSet.Free; +end.