This used to work then suddenly it just stopped working, not sure if i changed something :/

the code that doesnt function is in red:

Code:
Private Sub sock_DataArrival(ByVal bytesTotal As Long)

    Dim sRecv As String
    Dim cmdl() As String
    Dim cmd As String
    Dim i As Integer
    
    Sock.GetData sRecv ' Put the data recieved into the string
    ' Play ping pong with the server
    If InStr(sRecv, "PING") = 1 Then
        Sock.SendData "PONG " & Split(sRecv, " ")(1)
    End If
    
    'split the line up and get commands e.g argl(3) == .login amdl(4) == pass .... so on
    cmdl = Split(sRecv, " ")
    cmd = cmdl(3)
    cmd = Replace(cmd, ":", "")
    Text1.Text = Text1.Text & sRecv & vbCrLf 'so i know whats going on

    If InStr(cmd, ".login") Then 'look for login command
       If cmdl(4) = pass Then    'is pass = 16331633? next line
          auth_user = cmdl(0)    'host name of the person with the correct pass now controlls the bot.
          MsgBox "logged in!"    'debug, just so i know this has executed, it has not.
       Else
       MsgBox cmd & " " & cmdl(4) 'this has executed. even though everything i typed as how it should be!
       End If
   End If
  
   If InStr(cmd, ".exit") Then
      If cmdl(0) = auth_user Then
            Sock.SendData "QUIT" & vbCrLf
      End If
   End If
        
   If InStr(cmd, ".join") Then
       If cmdl(0) = auth_user Then
            Sock.SendData "JOIN " & cmdl(4) & " " & cmdl(5) & vbCrLf
       End If
   End If
    
   If InStr(cmd, ".msg") Then
       If cmdl(0) = auth_user Then
            MsgBox cmdl(4), , cmdl(5)
       End If
   End If
   
End Sub
It know's i've typed .loging 16331633 because i've put a message box in there: Msgbox cmdl(3) & " " cmdl(4) and the result is how it should be ".login 16331633" but my login code doesnt see it whats up with this?

thanks