In the area of "old business," I have written a small demo program that attaches a menu to more than one window at a time. The menu seems to work very nicely until I have it active in Window 2 and then stop the program by clicking on the "X" to close Window 1. At that point, the program is shutting itself down and terminates on error. The menus have all been destroyed and "fgDestroyStructure" then goes to destroy the windows. As part of this, the window's active menu is deactivated ... except that it has already been destroyed. To fix this problem, I added the following code to "freeglut_structure.c" at line 237 in the function "fghRemoveMenuFromWindow":
+ /* Check whether this is the active menu in the window */
+ if ( menu == window->ActiveMenu )
+ window->ActiveMenu = NULL ;
* Check if the menu is attached to the current window,
If someone with CVS access could please add this I would appreciate it.
John F. Fay