Jacek Caban : server: Don' t use set_no_fd_status for error handling in pipe objects.
Alexandre Julliard
julliard at winehq.org
Wed Aug 15 14:39:54 CDT 2018
Module: wine
Branch: master
Commit: 584ffc23418a5611cef1a38c4532001f0e518960
URL: https://source.winehq.org/git/wine.git/?a=commit;h=584ffc23418a5611cef1a38c4532001f0e518960
Author: Jacek Caban <jacek at codeweavers.com>
Date: Wed Aug 8 22:01:11 2018 +0200
server: Don't use set_no_fd_status for error handling in pipe objects.
Signed-off-by: Jacek Caban <jacek at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/ntdll/tests/pipe.c | 2 --
server/fd.c | 6 ------
server/file.h | 1 -
server/named_pipe.c | 15 ---------------
4 files changed, 24 deletions(-)
diff --git a/dlls/ntdll/tests/pipe.c b/dlls/ntdll/tests/pipe.c
index b312831..cb31956 100644
--- a/dlls/ntdll/tests/pipe.c
+++ b/dlls/ntdll/tests/pipe.c
@@ -1481,14 +1481,12 @@ static void pipe_for_each_state(HANDLE (*create_server)(void),
ok(ret, "DisconnectNamedPipe failed: %u\n", GetLastError());
test(server, TRUE, FILE_PIPE_DISCONNECTED_STATE);
- if(broken(1)) { /* FIXME: Remove once Wine can handle this case */
status = listen_pipe(server, event, &iosb, FALSE);
ok(status == STATUS_PENDING, "listen_pipe returned %x\n", status);
client = connect_client(server);
test(server, TRUE, FILE_PIPE_CONNECTED_STATE);
test(client, FALSE, FILE_PIPE_CONNECTED_STATE);
CloseHandle(client);
- }
CloseHandle(server);
CloseHandle(event);
diff --git a/server/fd.c b/server/fd.c
index 4fa5758..6118f52 100644
--- a/server/fd.c
+++ b/server/fd.c
@@ -1713,12 +1713,6 @@ struct fd *get_fd_object_for_mapping( struct fd *fd, unsigned int access, unsign
return NULL;
}
-/* set the status to return when the fd has no associated unix fd */
-void set_no_fd_status( struct fd *fd, unsigned int status )
-{
- fd->no_fd_status = status;
-}
-
/* sets the user of an fd that previously had no user */
void set_fd_user( struct fd *fd, const struct fd_ops *user_ops, struct object *user )
{
diff --git a/server/file.h b/server/file.h
index 1d25961..8609db0 100644
--- a/server/file.h
+++ b/server/file.h
@@ -78,7 +78,6 @@ struct fd_ops
extern struct fd *alloc_pseudo_fd( const struct fd_ops *fd_user_ops, struct object *user,
unsigned int options );
-extern void set_no_fd_status( struct fd *fd, unsigned int status );
extern struct fd *open_fd( struct fd *root, const char *name, int flags, mode_t *mode,
unsigned int access, unsigned int sharing, unsigned int options );
extern struct fd *create_anonymous_fd( const struct fd_ops *fd_user_ops,
diff --git a/server/named_pipe.c b/server/named_pipe.c
index f7b8b54..66e3607 100644
--- a/server/named_pipe.c
+++ b/server/named_pipe.c
@@ -338,20 +338,6 @@ static struct fd *pipe_end_get_fd( struct object *obj )
static void set_server_state( struct pipe_server *server, enum pipe_state state )
{
server->state = state;
-
- switch(state)
- {
- case ps_connected_server:
- case ps_wait_disconnect:
- break;
- case ps_wait_open:
- case ps_idle_server:
- set_no_fd_status( server->pipe_end.fd, STATUS_PIPE_LISTENING );
- break;
- case ps_wait_connect:
- set_no_fd_status( server->pipe_end.fd, STATUS_PIPE_DISCONNECTED );
- break;
- }
}
@@ -1232,7 +1218,6 @@ static struct object *named_pipe_open_file( struct object *obj, unsigned int acc
if ((client = create_pipe_client( options, pipe->flags, pipe->outsize, options )))
{
- set_no_fd_status( server->pipe_end.fd, STATUS_BAD_DEVICE_TYPE );
allow_fd_caching( server->pipe_end.fd );
if (server->state == ps_wait_open)
fd_async_wake_up( server->pipe_end.fd, ASYNC_TYPE_WAIT, STATUS_SUCCESS );
More information about the wine-cvs
mailing list