When running beirc, I periodically see the following error:
* (beirc:beirc)
#S(CLIM-INTERNALS::PROCESS
:NAME "BEIRC GUI process"
:STATE NIL
:WHOSTATE NIL
:FUNCTION #<CLOSURE (LAMBDA #) {1004BAC449}>
:THREAD #<SB-THREAD:THREAD "BEIRC GUI process" RUNNING {1004BAC5A1}>)
*
debugger invoked on a TYPE-ERROR in thread #<THREAD "BEIRC GUI process" RUNNING
{1004BAC5A1}>:
The value 1052 is not of type (UNSIGNED-BYTE 8).
I assume this is caused by someone sending a unicode character to a channel and beirc not handling it properly. Unfortunately, at least when called from a non-slime REPL, this causes the whole window to lock up and doesn't even drop the REPL into the debugger, which makes debugging somewhat challenging. So I think there are (at least) two problems here:
1. beirc doesn't handle unicode characters
and
2. error handling should be improved such that the user has a chance to do something less destructive than killing the process.
thanks,
cyrus