- The RtlEnumerateGenericTableWithoutSplaying function in RTL (generictable.c) effectively performs an endless enumeration, never advancing to the next successor element in the tree because of a bug in the code. Fix this. (Bug #3756).
- The RtlDelete code misses a line of code checking whether the node is a root,
and instead always returns NULL (assuming it is the root). Fix this. (Bug #3760).
See issue #3760 for more details.
svn path=/trunk/; revision=36663
- Implemented RtlInsertElementGenericTable and RtlInsertElementGenericTableFull (Splay-Tree versions). Also implemented a helper function RtlpFindGenericTableNodeOrParent when we're not given one and need to locate it manually.
- Defined structure for generic table entries so that we can properly return user data and do the right allocations.
svn path=/trunk/; revision=24541
- We can't use the builtin node as a sentinel in exactly the same way as used
in the austin lib, so we account for that by treating the builtin node like
nil a few places.
svn path=/trunk/; revision=24510
We now use BalancedRoot->Parent as the nil element and distinguish it from
the embedded element.
Fix null and root macros, assert macro and some other stuff.
svn path=/trunk/; revision=24495
in generictable.
Not tested, (but nothing relies on it yet).
Austin is
Copyright (C) 2000 Kaz Kylheku <kaz@ashi.footprints.net>
Copyright (C) 2000 Carl van Tast <vanTast@netway.at>
Copying, reuse and modification are permitted on liberal terms.
svn path=/trunk/; revision=24482
- Add special case where we get a prefix itself and a name starting with a prefix character.
- Implement RtlInitializeGenericTable
This fixes the windows npfs.sys hang.
svn path=/trunk/; revision=19055