I tried the new 1.3.1beta (linux, 64 bit, g++ 4.8.1) and it compiles and starts and receives data, but I was consistently getting a seg fault. See below output from gdb, (which I've elided at the point where it reaches my code): it appears that it is happening on the call to createOrdersTableReader() in this function:
void onOrdersResponse(IO2GResponse *response){
O2G2Ptr<IO2GResponseReaderFactory> factory = mSession->getResponseReaderFactory();
if(!factory)return;
O2G2Ptr<IO2GOrdersTableResponseReader> reader = factory->createOrdersTableReader(response);
if(!reader)return;
//...
}
When I reverted to 1.3.0 it is fine again. BTW, there do not appear to be any open orders being read at that point, for that account.
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffd8ff9700 (LWP 31848)]
0x0000000000679460 in ?? ()
(gdb) bt
#0 0x0000000000679460 in ?? ()
#1 0x00007ffff7ad4985 in ColumnsFactory::getColumns (this=<optimized out>, table=<optimized out>)
at /home/jenkins/jenkins/workspace/ForexConnect_API-1.3_Linux64_build/CandleWorks/WindowsTradingApplications/Order2Go2/cpp/source/tables/columns/ColumnsFactory.cpp:103
#2 0x00007ffff7a9c1b2 in TGenericTableResponseReader<IO2GOrdersTableResponseReader, IO2GOrderRow, (O2GTable)2>::TGenericTableResponseReader (this=0x7fffbc000ed0)
at /home/jenkins/jenkins/workspace/ForexConnect_API-1.3_Linux64_build/CandleWorks/WindowsTradingApplications/Order2Go2/cpp/source/protocols/DAS/../../responses/Readers/GenericTableResponseReader.h:55
#3 0x00007ffff7a991ba in DasResponseReaderFactory::createOrdersTableReader (this=<optimized out>, response=<optimized out>)
at /home/jenkins/jenkins/workspace/ForexConnect_API-1.3_Linux64_build/CandleWorks/WindowsTradingApplications/Order2Go2/cpp/source/protocols/DAS/DasResponseReaderFactory.cpp:367
#4 0x0000000000413766 in onOrdersResponse() ...
void onOrdersResponse(IO2GResponse *response){
O2G2Ptr<IO2GResponseReaderFactory> factory = mSession->getResponseReaderFactory();
if(!factory)return;
O2G2Ptr<IO2GOrdersTableResponseReader> reader = factory->createOrdersTableReader(response);
if(!reader)return;
//...
}
When I reverted to 1.3.0 it is fine again. BTW, there do not appear to be any open orders being read at that point, for that account.
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffd8ff9700 (LWP 31848)]
0x0000000000679460 in ?? ()
(gdb) bt
#0 0x0000000000679460 in ?? ()
#1 0x00007ffff7ad4985 in ColumnsFactory::getColumns (this=<optimized out>, table=<optimized out>)
at /home/jenkins/jenkins/workspace/ForexConnect_API-1.3_Linux64_build/CandleWorks/WindowsTradingApplications/Order2Go2/cpp/source/tables/columns/ColumnsFactory.cpp:103
#2 0x00007ffff7a9c1b2 in TGenericTableResponseReader<IO2GOrdersTableResponseReader, IO2GOrderRow, (O2GTable)2>::TGenericTableResponseReader (this=0x7fffbc000ed0)
at /home/jenkins/jenkins/workspace/ForexConnect_API-1.3_Linux64_build/CandleWorks/WindowsTradingApplications/Order2Go2/cpp/source/protocols/DAS/../../responses/Readers/GenericTableResponseReader.h:55
#3 0x00007ffff7a991ba in DasResponseReaderFactory::createOrdersTableReader (this=<optimized out>, response=<optimized out>)
at /home/jenkins/jenkins/workspace/ForexConnect_API-1.3_Linux64_build/CandleWorks/WindowsTradingApplications/Order2Go2/cpp/source/protocols/DAS/DasResponseReaderFactory.cpp:367
#4 0x0000000000413766 in onOrdersResponse() ...
Aucun commentaire:
Enregistrer un commentaire