Hi,I get a crash when I try to use FileGDBAPI together with Qt on Linux. The crash reveals itself to be an infinite recursion between QObject and QThread when creating a QObject.Given the following code:
DeleteGeodatabase(L"test.gdb");
Geodatabase geodb;
CreateGeodatabase(L"test.gdb", geodb); // Replace this with OpenGeodatabase(...) to make the crash go away
std::ifstream states_file("states.xml");
std::string states_xml;
getline(states_file, states_xml, '\0');
QObject q1; // Comment out this line to make the crash go away
Table table_states;
geodb.CreateTable(states_xml, L"", table_states);
QObject q2; // <-- Crash occurs Here
geodb.CloseTable(table_states);
CloseGeodatabase(geodb);
The crash occurs on the line 'QObject q2;', and the following conditions need to be met in order for the crash to occur:1) Call 'CreateGeodatabase(...)' (The crash does not occur if you open an existing Geodatabase.)2) Create a QObject BEFORE the call to Geodatabase::CreateTable(...), AND2) Create a QObject AFTER the call to Geodatabase::CreateTable(...).I suspect that something is happening in the FileGDBAPI to cause threading to get into a bad state (due to the fact the crash involves QThread).Chris Scrimgeour