diff --git a/reactos/ntoskrnl/ob/object.c b/reactos/ntoskrnl/ob/object.c index 79c33949181..08c36ed50d6 100644 --- a/reactos/ntoskrnl/ob/object.c +++ b/reactos/ntoskrnl/ob/object.c @@ -712,8 +712,13 @@ ObCreateObject (IN KPROCESSOR_MODE ObjectAttributesAccessMode OPTIONAL, if (ParentHeader && RemainingPath.Buffer == NULL) { - ObDereferenceObject(Parent); - return STATUS_OBJECT_NAME_COLLISION; + if (ParentHeader->ObjectType != Type) + { + ObDereferenceObject(Parent); + return STATUS_OBJECT_NAME_COLLISION; + } + *Object = Parent; + return STATUS_OBJECT_EXISTS; } } else