Added specific routines for OUTPUT_DEBUG_STRING and EXCEPTION debug events.
Generate a breakpoint event on process attach.
Misc cleanups in request handling.
diff --git a/server/file.c b/server/file.c
index 70e12c8..e5b514a 100644
--- a/server/file.c
+++ b/server/file.c
@@ -468,15 +468,17 @@
struct file *file;
req->handle = -1;
- if ((fd = dup(fd)) != -1)
+ if (current->pass_fd != -1)
{
- if ((file = create_file_for_fd( fd, req->access, FILE_SHARE_READ | FILE_SHARE_WRITE, 0 )))
+ if ((file = create_file_for_fd( current->pass_fd, req->access,
+ FILE_SHARE_READ | FILE_SHARE_WRITE, 0 )))
{
req->handle = alloc_handle( current->process, file, req->access, 0 );
release_object( file );
}
+ current->pass_fd = -1;
}
- else file_set_error();
+ else set_error( STATUS_INVALID_PARAMETER );
}
/* get a Unix fd to read from a file */