06.04.2015 17:59, Alex Peshkoff wrote: > If you send me stack trace of what > happens in your case I hope I can help you better.
There is nothing useful in call stack, only expected routines. I use a method declared like this: > #define REPL_STATUS_TYPE IStatus > virtual intptr_t processInsert(REPL_STATUS_TYPE* status, IAttachment* att, ITransaction* tra, IRecord* new_data) = 0; Which is implemented implemented like this: > intptr_t ReplTransaction::processInsert(CheckStatusWrapper* status, > IAttachment* att, ITransaction* tra, IRecord* new_data) > { > .... > if (status->getState() & IStatus::STATE_ERRORS) > return status->getErrors()[1]; > .... > } I call it like this: > LocalStatus status; > if (transaction->tra_repl_trans->processInsert(&status, att, transaction->getInterface(), new_record) != 0) > status.check(); At call of getState() I'm getting AV on some crazy address. It looks like your pseudo-VMT was not initialized and a garbage address is getting called. -- WBR, SD. ------------------------------------------------------------------------------ BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT Develop your own process in accordance with the BPMN 2 standard Learn Process modeling best practices with Bonita BPM through live exercises http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual- event?utm_ source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF Firebird-Devel mailing list, web interface at https://lists.sourceforge.net/lists/listinfo/firebird-devel