Author: fireball
Date: Tue Nov 27 16:27:39 2007
New Revision: 30818
URL:
http://svn.reactos.org/svn/reactos?rev=30818&view=rev
Log:
- Add a reset of a "failure" flag in a successive case. Previous behavior was
scary, that once a failure occured, it was always freeing all further entries.
- Readd what was removed in 30812.
- Herve Poussineaue really did all work on tracing down the problem, spending much time
writing debug/check routines, I would not spot this bug without him.
See issue #2545 for more details.
Modified:
trunk/reactos/ntoskrnl/ex/handle.c
Modified: trunk/reactos/ntoskrnl/ex/handle.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ex/handle.c?rev=3…
==============================================================================
--- trunk/reactos/ntoskrnl/ex/handle.c (original)
+++ trunk/reactos/ntoskrnl/ex/handle.c Tue Nov 27 16:27:39 2007
@@ -1120,8 +1120,12 @@
HandleTableEntry,
NewEntry))
{
- /* Lock the entry */
+ /* Clear failure flag */
+ Failed = FALSE;
+
+ /* Lock the entry, increase the handle count */
NewEntry->Value |= EXHANDLE_TABLE_ENTRY_LOCK_BIT;
+ NewTable->HandleCount++;
}
else
{