IRCC: Dont skip all colons when searching for string, only skip one. Fixed KICK servercommand.

git-svn-id: svn://kolibrios.org@4595 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
hidnplayr 2014-02-25 22:18:36 +00:00
parent 36a222c11c
commit bed902bcfd
2 changed files with 32 additions and 18 deletions

View File

@ -128,7 +128,7 @@ draw_window: ; Completely redraw the window, recalculate all coordinates and
; draw editbox
mov eax, [ysize]
sub eax, 12 ;;;;;;
sub eax, 13 ;;;;;;
mov [edit1.top], eax
mov eax, [xsize]

View File

@ -121,7 +121,7 @@ compare_to_nick:
align 4
skip_parameter:
; First: skip the parameter
; First: skip the parameter (scan untill space or colon)
.part1:
lodsb
cmp al, ' '
@ -129,19 +129,28 @@ skip_parameter:
cmp al, ':'
jne .part1
; Now, skip all trailing spaces and semicolons
; Skip all trailing spaces
.part3:
lodsb
cmp al, ' '
je .part3
dec esi
ret
; Now, skip all trailing spaces and first semicolon
.part2:
lodsb
cmp al, ' '
je .part2
cmp al, ':'
je .part2
je .part3
dec esi
ret
cmd_324:
cmd_329:
cmd_328:
@ -708,18 +717,15 @@ cmd_kick:
cmp byte [esi+4], ' '
jne .fail
add esi, 5 ; skip 'KICK '
; Is it me who got kicked?
mov edi, servercommand+1
call compare_to_nick
jne .not_me
; TODO: mark channel as disconnected
; TODO: Is it me who got kicked?
; if so, mark channel as disconnected
.not_me:
; find the channel user has been kicked from
push esi
call skip_parameter
call window_open
push esi
if TIMESTAMP
call print_timestamp
@ -728,17 +734,25 @@ cmd_kick:
mov esi, kick_header
call print_text2
pop eax
mov dl, ' '
call print_text
mov esi, str_kicked
call print_text2
pop eax
mov dl, ' '
call print_text2
mov esi, str_by
call print_text2
mov eax, servercommand+1
mov dl, '!'
call print_text
mov esi, kicked
call print_text2
pop esi
call print_text2
mov esi, str_newline
mov esi, str_dotnewline
call print_text2
mov ebx, [window_print]