8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-23 10:43:03 +01:00

Code simplification. We don't need to track the cancellation for the non-request activities.

This commit is contained in:
dimitr 2007-12-11 09:19:06 +00:00
parent 42f9f8f46f
commit cf12557e36

View File

@ -3764,6 +3764,9 @@ ISC_STATUS GDS_START_AND_SEND(ISC_STATUS* user_status,
if (check_database(tdbb, request->req_attachment, user_status))
return user_status[1];
if (check_transaction(tdbb, request->req_transaction, user_status))
return user_status[1];
#ifdef REPLAY_OSRI_API_CALLS_SUBSYSTEM
LOG_call(log_start_and_send, *req_handle, *tra_handle, msg_type,
msg_length, msg, level);
@ -3824,6 +3827,9 @@ ISC_STATUS GDS_START(ISC_STATUS * user_status,
if (check_database(tdbb, request->req_attachment, user_status))
return user_status[1];
if (check_transaction(tdbb, request->req_transaction, user_status))
return user_status[1];
#ifdef REPLAY_OSRI_API_CALLS_SUBSYSTEM
LOG_call(log_start, *req_handle, *tra_handle, level);
#endif
@ -5030,16 +5036,12 @@ static ISC_STATUS check_transaction(thread_db* tdbb, jrd_tra* transaction, ISC_S
transaction->tra_flags &= ~TRA_cancel_request;
tdbb->tdbb_flags |= TDBB_sys_error;
if (user_status)
{
tdbb->tdbb_status_vector = user_status;
}
ISC_STATUS* ptr = tdbb->tdbb_status_vector;
ISC_STATUS* ptr = tdbb->tdbb_status_vector = user_status;
fb_assert(ptr);
*ptr++ = isc_arg_gds;
*ptr++ = isc_cancelled;
*ptr++ = isc_arg_end;
return user_status ? error(user_status) : tdbb->tdbb_status_vector[1];
return error(user_status);
}
return FB_SUCCESS;
@ -5249,12 +5251,6 @@ static jrd_tra* find_transaction(thread_db* tdbb, jrd_tra* transaction, ISC_STAT
for (; transaction; transaction = transaction->tra_sibling)
if (transaction->tra_attachment == tdbb->getAttachment()) {
if (check_transaction(tdbb, transaction, 0))
{
ERR_punt();
}
tdbb->setTransaction(transaction);
return transaction;
}