[Bug 46180] wineserver does not unregister windows classes on process termination

wine-bugs at winehq.org wine-bugs at winehq.org
Sat Nov 24 06:00:18 CST 2018


https://bugs.winehq.org/show_bug.cgi?id=46180

--- Comment #2 from Ralf Habacker <ralf.habacker at freenet.de> ---
According to https://github.com/wine-mirror/wine/blob/master/server/class.c#L84
destroy_process_classes() is implemented as 

void destroy_process_classes( struct process *process )
{
    struct list *ptr;

    while ((ptr = list_head( &process->classes )))
    {
        struct window_class *class = LIST_ENTRY( ptr, struct window_class,
entry );
        destroy_class( class );
    }
}

and uses also destroy_class(), but destroy_class() does not release the
atom(s). 


BTW: destroy_class() is also called from UnregisterClass()
(https://github.com/wine-mirror/wine/blob/master/server/class.c#L234), which
means relasing the atom need to be in destroy_class() to cover both cases.

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.



More information about the wine-bugs mailing list