From aed9207c964b024cf48dc0f8604434e72f6be30d Mon Sep 17 00:00:00 2001 From: Thomas Faber Date: Wed, 10 Aug 2016 21:09:50 +0000 Subject: [PATCH] [NTOS:FSRTL] - Use the correct parent node when replacing an identical cache entry in FsRtlAddToTunnelCache CORE-11819 svn path=/trunk/; revision=72193 --- reactos/ntoskrnl/fsrtl/tunnel.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/reactos/ntoskrnl/fsrtl/tunnel.c b/reactos/ntoskrnl/fsrtl/tunnel.c index a8006ac7812..727f467ddfd 100644 --- a/reactos/ntoskrnl/fsrtl/tunnel.c +++ b/reactos/ntoskrnl/fsrtl/tunnel.c @@ -467,21 +467,21 @@ FsRtlAddToTunnelCache(IN PTUNNEL Cache, else { /* update parent node */ - if (LastEntry->LeftChild == CurEntry) + if (RtlIsLeftChild(CurEntry)) { - RtlInsertAsLeftChild(LastEntry, NodeEntry); + RtlInsertAsLeftChild(RtlParent(CurEntry), NodeEntry); } else { - RtlInsertAsRightChild(LastEntry, NodeEntry); + RtlInsertAsRightChild(RtlParent(CurEntry), NodeEntry); } } /* remove entry */ - RemoveEntryList(&((PTUNNEL_NODE_ENTRY)LastEntry)->TimerQueueEntry); + RemoveEntryList(&((PTUNNEL_NODE_ENTRY)CurEntry)->TimerQueueEntry); /* free node entry */ - FsRtlFreeTunnelNode((PTUNNEL_NODE_ENTRY)LastEntry, &PoolList); + FsRtlFreeTunnelNode((PTUNNEL_NODE_ENTRY)CurEntry, &PoolList); /* decrement node count */ Cache->NumEntries--;