Author: tfaber Date: Thu Aug 7 00:16:21 2014 New Revision: 63825
URL: http://svn.reactos.org/svn/reactos?rev=63825&view=rev Log: [NTOS:OB] - Use ObpTypeObjectType's lock when modifying object type global properties, not the new object type's - Correctly free string returned by RtlUnicodeStringToAnsiString
Modified: trunk/reactos/ntoskrnl/ob/oblife.c
Modified: trunk/reactos/ntoskrnl/ob/oblife.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ob/oblife.c?rev=63... ============================================================================== --- trunk/reactos/ntoskrnl/ob/oblife.c [iso-8859-1] (original) +++ trunk/reactos/ntoskrnl/ob/oblife.c [iso-8859-1] Thu Aug 7 00:16:21 2014 @@ -1145,7 +1145,7 @@
/* Set the key and free the converted name */ LocalObjectType->Key = *(PULONG)AnsiName.Buffer; - ExFreePool(AnsiName.Buffer); + RtlFreeAnsiString(&AnsiName); } else { @@ -1227,7 +1227,7 @@ InitializeListHead(&LocalObjectType->TypeList);
/* Lock the object type */ - ObpEnterObjectTypeMutex(LocalObjectType); + ObpEnterObjectTypeMutex(ObpTypeObjectType);
/* Get creator info and insert it into the type list */ CreatorInfo = OBJECT_HEADER_TO_CREATOR_INFO(Header); @@ -1246,7 +1246,7 @@ }
/* Release the object type */ - ObpLeaveObjectTypeMutex(LocalObjectType); + ObpLeaveObjectTypeMutex(ObpTypeObjectType);
/* Check if we're actually creating the directory object itself */ if (!(ObpTypeDirectoryObject) ||