From ab24dde1cd2f072e393afa30537d4993a39198a3 Mon Sep 17 00:00:00 2001 From: dimitr Date: Tue, 2 May 2006 13:53:20 +0000 Subject: [PATCH] Fixed the CHECK bug reported by Ivan Prenosil. --- src/jrd/exe.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/jrd/exe.cpp b/src/jrd/exe.cpp index b91be4a61f..26b91a0d93 100644 --- a/src/jrd/exe.cpp +++ b/src/jrd/exe.cpp @@ -3627,14 +3627,15 @@ static void validate(thread_db* tdbb, jrd_nod* list) for (const jrd_nod* const* const end = ptr1 + list->nod_count; ptr1 < end; ptr1++) { - if (!EVL_boolean(tdbb, (*ptr1)->nod_arg[e_val_boolean])) + jrd_req* request = tdbb->tdbb_request; + if (!EVL_boolean(tdbb, (*ptr1)->nod_arg[e_val_boolean]) && + !(request->req_flags & req_null)) { /* Validation error -- report result */ const char* value; TEXT temp[128]; jrd_nod* node = (*ptr1)->nod_arg[e_val_value]; - jrd_req* request = tdbb->tdbb_request; const dsc* desc = EVL_expr(tdbb, node); const USHORT length = (desc && !(request->req_flags & req_null)) ? MOV_make_string(desc, ttype_dynamic, &value,