From 1987b471102fd11e68f0acdbca554703ee79937a Mon Sep 17 00:00:00 2001 From: Timo Kreuzer Date: Sun, 25 Oct 2009 11:37:17 +0000 Subject: [PATCH] [KDCOM] - Check the PacketType only after the whole message was received and just skip the message and restart when it's not what we wanted. svn path=/branches/ros-amd64-bringup/; revision=43738 --- reactos/drivers/base/kddll/kddll.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/reactos/drivers/base/kddll/kddll.c b/reactos/drivers/base/kddll/kddll.c index 4e4c1ebccb1..5736c6995fa 100644 --- a/reactos/drivers/base/kddll/kddll.c +++ b/reactos/drivers/base/kddll/kddll.c @@ -227,15 +227,6 @@ KdReceivePacket( return KDP_PACKET_RECEIVED; } - /* Did we get the right packet type? */ - if (PacketType != Packet.PacketType) - { - /* We received something different, start over */ - KDDBGPRINT("KdReceivePacket - wrong PacketType\n"); - KdpSendControlPacket(PACKET_TYPE_KD_RESEND, 0); - continue; - } - /* Get size of the message header */ switch (Packet.PacketType) { @@ -334,6 +325,15 @@ KdReceivePacket( continue; } + /* Did we get the right packet type? */ + if (PacketType != Packet.PacketType) + { + /* We received something different, ignore it. */ + KDDBGPRINT("KdReceivePacket - wrong PacketType\n"); + KdpSendControlPacket(PACKET_TYPE_KD_ACKNOWLEDGE, Packet.PacketId); + continue; + } + /* Acknowledge the received packet */ KdpSendControlPacket(PACKET_TYPE_KD_ACKNOWLEDGE, Packet.PacketId);