xmpp: improve C<->Lisp error handling, libstrophe logs in Lisp
- Instead of using ECL_HANDLER_CASE (which caught way too many conditions and broke things like the SLIME debugger), we now use ECL_RESTART_CASE to make an ABORT restart, and override ECL's default debugger with our own that prints the condition it gets and invokes this restart. - Note that if e.g. the SLIME debugger is running, the whole of weechat is halted waiting for it to complete (!) - libstrophe logs now get handled in Lisp instead of C. - We now make sure all of the WEE-IMPL functions are defined *before* loading the support library. - We also trim blank lines from our gray stream implementation used to forward output to Lisp.
Loading
Please register or sign in to comment