[2/2] server: A being destroyed object may need to access other objects using a handle.

Dmitry Timoshkov dmitry at baikal.ru
Fri May 24 04:12:16 CDT 2013


Alexandre Julliard <julliard at winehq.org> wrote:

> > --- a/server/handle.c
> > +++ b/server/handle.c
> > @@ -165,7 +165,6 @@ static void handle_table_destroy( struct object *obj )
> >      for (i = 0, entry = table->entries; i <= table->last; i++, entry++)
> >      {
> >          struct object *obj = entry->ptr;
> > -        entry->ptr = NULL;
> >          if (obj) release_object( obj );
> 
> You can't do that, the object can't be accessed after being released.

Being released doesn't mean destroyed. An object gets destroyed only if its
refcount drops to 0.

-- 
Dmitry.



More information about the wine-devel mailing list