Charles Davis wrote:
Also, add stub handlers in mountmgr.
This patch fixes an issue with the previous one where wine would hang if ntoskrnl got a STATUS_BUFFER_OVERFLOW back from thes server.
+int suspend_thread( struct thread *thread ); +int resume_thread( struct thread *thread );
+static void complete_open( struct open_call *open, unsigned int status ) +{
...
- resume_thread( open->call.thread );
This static struct object *device_open_file( struct object *obj, unsigned int access, unsigned int sharing, unsigned int options ) {
...
- suspend_thread( current );
Looks like a hack to me. You shouldn't be suspending/resuming threads directly like this. They should block on open operation.
Vitaliy.