wild pointers in current named pipe implementation?

Alexandre Julliard julliard at winehq.com
Tue Apr 15 10:49:35 CDT 2003


Dan Kegel <dank at kegel.com> writes:

> I do recommend also applying this hunk from my patch in addition to Bill's:
> 
> --- server/named_pipe.c 4 Apr 2003 22:26:34 -0000   1.22
> +++ server/named_pipe.c 14 Apr 2003 16:59:45 -0000
> @@ -200,8 +201,11 @@
>       if (user->prev) user->prev->next = user->next;
>       else user->pipe->users = user->next;
>       if (user->thread) release_object(user->thread);
> +    user->thread = NULL;
>       release_object(user->pipe);
> +    user->pipe = NULL;
>       if (user->fd) release_object( user->fd );
> +    user->fd = NULL;
>   }

This is useless, the object is being destroyed anyway. If it does make
a difference then there's another bug somewhere else, and this would
only hide it.

-- 
Alexandre Julliard
julliard at winehq.com



More information about the wine-devel mailing list