"Adam Beneschan" wrote in message news:1178753228.648765.89390@e65g2000hsc.googlegroups.com... On May 9, 3:00 pm, Manuel Collado wrote: > Adam Beneschan escribi�: > Well, JEWL uses tasks internally. So, who knows... > > No, I believe that all objects, including static package variables > > *and* including allocated objects that have not yet been deallocated, > > are supposed to be finalized when the environment task completes. > > 10.2(25), 7.6.1(10). > > The fact is that there is a significant difference in behaviour between > variables in the main procedure and static package variables. Example: This sounds awfully familiar to me; it's a problem that we had in Claw. The problem you're having appears to be that the library you arer using (JEWL) does not properly support library-level objects. We had a lot of trouble with this in Claw, in the end we found a trick to determine when the environment task is completing; then we have the main task forcibly close/finalize all open windows. Otherwise, the program would go catatonic, because the tasks would be waiting for the windows to close, but Ada says that the tasks have to end first. Moral: using an ancient library and an ancient compiler means that you'll refind all of the bugs long ago worked out. Use a newer compiler, use a library like Claw oe GWindows or even GtkAda, and you won't have these sorts of issues... Randy.