From 586548d926aec385faf7fcbf11dbfec3e0220654 Mon Sep 17 00:00:00 2001 From: Eric Kohl Date: Wed, 7 Apr 2004 15:35:14 +0000 Subject: [PATCH] Fixed crashes that were cause by the changes to the service parameter table. svn path=/trunk/; revision=9005 --- reactos/ntoskrnl/ke/i386/syscall.S | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/reactos/ntoskrnl/ke/i386/syscall.S b/reactos/ntoskrnl/ke/i386/syscall.S index 9e4a53a6e12..f843f97599c 100644 --- a/reactos/ntoskrnl/ke/i386/syscall.S +++ b/reactos/ntoskrnl/ke/i386/syscall.S @@ -16,7 +16,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ -/* $Id: syscall.S,v 1.13 2004/03/29 22:29:34 gvg Exp $ +/* $Id: syscall.S,v 1.14 2004/04/07 15:35:14 ekohl Exp $ * * FILE: ntoskrnl/hal/x86/syscall.s * PURPOSE: 2E trap handler @@ -153,7 +153,8 @@ new_serviceInRange: /* Allocate room for argument list from kernel stack */ movl %es:_KeServiceDescriptorTable + 12, %ecx - movl %es:(%ecx, %eax, 4), %ecx + movb %es:(%ecx, %eax), %cl + movzx %cl, %ecx subl %ecx, %esp /* Copy the arguments from the user stack to the kernel stack */ @@ -211,7 +212,8 @@ new_shadowServiceInRange: /* Allocate room for argument list from kernel stack */ movl %es:_KeServiceDescriptorTableShadow + 28, %ecx - movl %es:(%ecx, %eax, 4), %ecx + movb %es:(%ecx, %eax), %cl + movzx %cl, %ecx subl %ecx, %esp /* Copy the arguments from the user stack to the kernel stack */