kanzure/python-brlcad — pull request #27 by ncsaba (2014-03-01 15:11:41+00:00)
Title: Tests to debug windows problems

Hi Bryan,

The windows problems turned out to be more difficult than expected - a simple empty DB is already showing strange unexpected results, despite of calling only straightforward BRL-CAD library functions where I wouldn't expect anything to be wrong...

I added 2 test cases to show the problems - what happens is that the directory entries have totally wrong flags. That's the obvious problem I could notice at once, but who knows what else is wrong too.

The test_wdb.py will actually fail on the directory reading of the just created/closed/re-opened geometry DB file, with "access violation" error, which I suppose is the equivalent of segmentation fault on linux.

The test_defaults.g file is already created at that point, and if I open it in python it will not seg-fault anymore, but the directory entries have strange flags, for example the _GLOBAL object is marked as "RT_DIR_COMB" instead of "RT_DIR_HIDDEN".

I get the same effect if I create an empty DB (using python-brlcad), the flags of the _GLOBAL object have the same problem. The test_empty_db.py test-case will show that based on direct calls to libwdb.

I'm mostly at the end of my possibilities regarding debugging this, somebody who better knows the windows port of BRL-CAD should have a look at it... I can attach the empty geometry file for checking it, mged loads it properly and shows no problems.

OK, I did one more test: I created an empty geometry file using mged, and then tried to load it via python: the directory flags still show up wrong, so it is either a problem of BRL-CAD creating a new DB, or of python loading it... but it still won't help me much further, somebody who knows what to look for in the .g file should perhaps have a look at the files to confirm if there's a problem with them.

Cheers,
Csaba