Respect OBJ_OPENIF flag in ObCreateObject Modified: trunk/reactos/ntoskrnl/ob/namespc.c Modified: trunk/reactos/ntoskrnl/ob/object.c _____
Modified: trunk/reactos/ntoskrnl/ob/namespc.c --- trunk/reactos/ntoskrnl/ob/namespc.c 2005-04-11 22:37:46 UTC (rev 14595) +++ trunk/reactos/ntoskrnl/ob/namespc.c 2005-04-11 22:38:05 UTC (rev 14596) @@ -60,7 +60,7 @@
InitializeObjectAttributes(&ObjectAttributes, ObjectPath, - Attributes, + Attributes | OBJ_OPENIF, NULL, NULL); Status = ObFindObject(&ObjectAttributes, _____
Modified: trunk/reactos/ntoskrnl/ob/object.c --- trunk/reactos/ntoskrnl/ob/object.c 2005-04-11 22:37:46 UTC (rev 14595) +++ trunk/reactos/ntoskrnl/ob/object.c 2005-04-11 22:38:05 UTC (rev 14596) @@ -712,7 +712,8 @@
if (ParentHeader && RemainingPath.Buffer == NULL) { - if (ParentHeader->ObjectType != Type) + if (ParentHeader->ObjectType != Type + || !(ObjectAttributes->Attributes & OBJ_OPENIF)) { ObDereferenceObject(Parent); return STATUS_OBJECT_NAME_COLLISION;