jaraco / irc

Full-featured Python IRC library for Python.
MIT License
390 stars 84 forks source link

Empty quit message raises IndexError #210

Open OrpheusGr opened 12 months ago

OrpheusGr commented 12 months ago

When a quit message is empty an IndexError is raised as the line is processed.

Traceback (most recent call last):                        
File "/usr/lib/python3.9/threading.py", line 954, in _bootstrap_inner                                             
self.run()                                            
File "/usr/lib/python3.9/threading.py", line 892, in run                                                          
self._target(*self._args, **self._kwargs)             
File "/home/orfeas/DiscIRC-Relay/classcon.py", line 48, in startloop                                            
reactor.process_once(0.2)                             
File "/home/orfeas/.local/lib/python3.9/site-packages/irc/client.py", line 827, in process_once               
self.process_data(in_)                                
File "/home/orfeas/.local/lib/python3.9/site-packages/irc/client.py", line 792, in process_data                   
conn.process_data()                                   
File "/home/orfeas/.local/lib/python3.9/site-packages/irc/client.py", line 268, in process_data                   
self._process_line(line)                              
File "/home/orfeas/.local/lib/python3.9/site-packages/irc/client.py", line 299, in _process_line
handler(arguments, command, source, tags)
File "/home/orfeas/.local/lib/python3.9/site-packages/irc/client.py", line 348, in _handle_other
arguments = [arguments[0]]
IndexError: list index out of range

What solved the issue for me is a try-except block in def _handle_other line 348

try:
    arguments = [arguments[0]]
except IndexError:
    arguments = [""]