8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-22 18:43:02 +01:00

Fixed bug #7860 : Crash potentially caused by BETWEEN Operator

This commit is contained in:
Vlad Khorsun 2023-11-25 00:42:00 +02:00
parent aa2486293d
commit 8789caf2b1

View File

@ -57,9 +57,9 @@ void ConditionalStream::internalOpen(thread_db* tdbb) const
Request* const request = tdbb->getRequest();
Impure* const impure = request->getImpure<Impure>(m_impure);
impure->irsb_flags = irsb_open;
impure->irsb_next = m_boolean->execute(tdbb, request) ? m_first : m_second;
impure->irsb_flags = irsb_open;
impure->irsb_next->open(tdbb);
}
@ -75,7 +75,8 @@ void ConditionalStream::close(thread_db* tdbb) const
{
impure->irsb_flags &= ~irsb_open;
impure->irsb_next->close(tdbb);
if (impure->irsb_next)
impure->irsb_next->close(tdbb);
}
}