mirror of
https://github.com/FirebirdSQL/firebird.git
synced 2025-01-24 18:43:02 +01:00
Fixed bug CORE-3389 : isc_dsql_exec_immed2 with zero transaction handle could lead to a BUGCHECK(147)
This commit is contained in:
parent
199adbf7d4
commit
293d5dcb90
@ -1141,6 +1141,14 @@ static void execute_immediate(thread_db* tdbb,
|
|||||||
|
|
||||||
request = prepare(tdbb, database, *tra_handle, length, string, dialect, parser_version);
|
request = prepare(tdbb, database, *tra_handle, length, string, dialect, parser_version);
|
||||||
|
|
||||||
|
// Only allow NULL trans_handle if we're starting a transaction
|
||||||
|
|
||||||
|
if (!*tra_handle && request->req_type != REQ_START_TRANS)
|
||||||
|
{
|
||||||
|
ERRD_post(Arg::Gds(isc_sqlerr) << Arg::Num(-901) <<
|
||||||
|
Arg::Gds(isc_bad_trans_handle));
|
||||||
|
}
|
||||||
|
|
||||||
Jrd::ContextPoolHolder context(tdbb, &request->req_pool);
|
Jrd::ContextPoolHolder context(tdbb, &request->req_pool);
|
||||||
|
|
||||||
// A select with a non zero output length is a singleton select
|
// A select with a non zero output length is a singleton select
|
||||||
|
Loading…
Reference in New Issue
Block a user