Norton Commander for Windows 1.02 and 2.01
==========================================

The Bug occures after you installed WinXP SP2 (Windows XP Servicepack 2 <- to give some nice keyword for google)

When the cursor is is not blinking in the commandline Textbox and you press a key it get's repeated several times.
For example each time you press '1' , '11' will occure in the commandline
when you press '2' you get '222'
'3' gives '333'
'L' gives 'LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL' and so on.


Bug:

    Sourcecode snipped:
    SendMessageA(HWnd, WM_CHAR,Key, (lKeyData_low  << 16) | lKeyData_high
	
	Asm:
	00334B4F   8B4C24 18          MOV     ECX, [ESP+18]   ;  lKeyData_low (repeat count)
	00334B53   8B5424 1C          MOV     EDX, [ESP+1C]   ;  lKeyData_high (ALT key pressed,previous key state, Releasestate )
	00334B57   81E1 FFFF0000      AND     ECX, 0FFFF
	00334B5D   81E2 FFFF0000      AND     EDX, 0FFFF
	00334B63   C1E1 10            SHL     ECX, 10         ;  Shift Low 16 bits up
	00334B66   8B40 1C            MOV     EAX, [EAX+1C]
	00334B69   0BCA               OR      ECX, EDX        ;  'OR' Low and High together
	00334B6B   51                 PUSH    ECX             ;  lKeyData
	00334B6C   56                 PUSH    ESI             ;  Key
	00334B6D   68 02010000        PUSH    102             ;  WM_CHAR
	00334B72   50                 PUSH    EAX             ;  HWnd
	00334B73   FFD7               CALL    EDI             ;  SendMessageA


Patch:
    Sourcecode snipped:
    SendMessageA(HWnd, WM_CHAR,Key, (lKeyData_high << 16) | lKeyData_low 
	
	Asm:
	00334B63   C1E2 10            SHL     EDX, 10         ;  Shift high 16 bits up
	
Background:
	The Bug is present in all versions of 'NC for Win' but didn't take effect, since Windows didn't care about the 'repeat count' parameter
	in the WM_CHAR Message. Probably that's why the bug wasn't noticed even by the programmers.
	In SP2 Mircosoft fixed that issue with the WM_CHAR repeat count parameter in user32.dll(ntdll.dll or were every) and so the bug
	got visible.
	
