On Thu, May 02, 2013 at 03:18:43AM -0500, Dick Hollenbeck wrote: > This is an application bug, one which failed to properly dovetail object life > cycles in > the dual language environment. I will get with Miguel on it in the next > couple of weeks.
It's inherently difficult. I don't know if it can be done without heavily massaging pcbnew classes to let them know about the python interface. > To cause the bug, my thinking is all you have to do is: > > 1) load the board into pcbnew. > > 2) start the python console, which I will call an "interpreter instance", or > interpreter > for short. > > 3) have interpreter get a board reference. > > 4) Use pcbnew to unload the board, possibly loading another one. > > 5) have the interpreter use the old board reference. Exactly. I did exactly that. > BTW, JNI would not have been immune to this scenario either. Like any tool, > it can be > mis-applied. My opinion is that is hopeless attaching managed to unmanaged code without trickery in both of them. Trickery in manager code usually is easier at least :D -- Lorenzo Marcantonio Logos Srl _______________________________________________ Mailing list: https://launchpad.net/~kicad-developers Post to : kicad-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp