diff --git a/reactos/drivers/input/sermouse/detect.c b/reactos/drivers/input/sermouse/detect.c index d66011d117c..f7c8273849f 100644 --- a/reactos/drivers/input/sermouse/detect.c +++ b/reactos/drivers/input/sermouse/detect.c @@ -132,7 +132,7 @@ SermouseDetectLegacyDevice( /* Open port */ Status = ObOpenObjectByPointer( LowerDevice, - OBJ_EXCLUSIVE | OBJ_KERNEL_HANDLE, + OBJ_KERNEL_HANDLE, NULL, 0, NULL, diff --git a/reactos/drivers/serial/serenum/detect.c b/reactos/drivers/serial/serenum/detect.c index fcf2a6543c7..a10356e9a4a 100644 --- a/reactos/drivers/serial/serenum/detect.c +++ b/reactos/drivers/serial/serenum/detect.c @@ -467,7 +467,7 @@ SerenumDetectLegacyDevice( /* Open port */ Status = ObOpenObjectByPointer( LowerDevice, - OBJ_EXCLUSIVE | OBJ_KERNEL_HANDLE, + OBJ_KERNEL_HANDLE, NULL, 0, NULL, diff --git a/reactos/drivers/serial/serial/rw.c b/reactos/drivers/serial/serial/rw.c index 649f234e846..00085c15f79 100644 --- a/reactos/drivers/serial/serial/rw.c +++ b/reactos/drivers/serial/serial/rw.c @@ -225,8 +225,8 @@ SerialRead( if (WorkItem) { WorkItemData->IoWorkItem = WorkItem; - IoQueueWorkItem(WorkItem, SerialReadWorkItem, DelayedWorkQueue, WorkItemData); IoMarkIrpPending(Irp); + IoQueueWorkItem(WorkItem, SerialReadWorkItem, DelayedWorkQueue, WorkItemData); return STATUS_PENDING; }