MCPcopy Create free account
hub / github.com/FirebirdSQL/firebird / checkTranIntf

Function checkTranIntf

src/jrd/jrd.cpp:401–428  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

399};
400
401static JTransaction* checkTranIntf(StableAttachmentPart* sAtt, JTransaction* jt, jrd_tra* tra)
402{
403 if (jt && !tra)
404 {
405 jt->setHandle(NULL);
406 jt->release();
407 jt = NULL;
408 }
409 else if (tra && !jt)
410 {
411 jt = tra->getInterface(false);
412 if (jt)
413 tra->tra_flags &= ~TRA_own_interface;
414 else
415 {
416 jt = FB_NEW JTransaction(tra, sAtt);
417 tra->setInterface(jt);
418 jt->addRef();
419 }
420 }
421 else if (tra && jt)
422 {
423 jt->setHandle(tra);
424 tra->setInterface(jt);
425 }
426
427 return jt;
428};
429
430class EngineFactory : public AutoIface<IPluginFactoryImpl<EngineFactory, CheckStatusWrapper> >
431{

Callers 1

executeMethod · 0.85

Calls 6

JTransactionClass · 0.85
setHandleMethod · 0.45
releaseMethod · 0.45
getInterfaceMethod · 0.45
setInterfaceMethod · 0.45
addRefMethod · 0.45

Tested by

no test coverage detected