anchor.diff:                        (when (and (string/= line +cr-lf+)
                                    (string/= line +cr+)
                                    (string/= line +lf+))
  -                        (sb-bsd-sockets:socket-send
  -                          swank-socket
  -                          (babel:string-to-octets (msg-client-to-swank line))
  -                          nil))))))
  +                        (handler-case
  +                          (sb-bsd-sockets:socket-send
  +                            swank-socket
  +                            (babel:string-to-octets (msg-client-to-swank line))
  +                            nil)
  +                          (t (c)
  +                             (vom:debug ":client-data: ~a" c)
  +                             (swank/backend:send control-thread '(:swank-write-error)))))))))
   
                 (:swank-data
                   (vom:debug "swank-data msg")
  
positive.code:                   (when msg-list
                      (dolist (msg msg-list)
                        (vom:debug "Message from SWANK: ~s" msg)
                        (sb-bsd-sockets:socket-send
                          client-socket
                          (babel:string-to-octets (msg-swank-to-client msg))
                          nil)))))
  
                ((:exit :client-eof :swank-eof)
                  (vom:debug "EOF: ~s" msg)
                  (swank/backend:kill-thread swank-read-thread)
                  (swank/backend:kill-thread client-read-thread)
                  (sb-bsd-sockets:socket-close swank-socket)
  
negative.code:          (swank-socket
             (make-instance 'sb-bsd-sockets:inet-socket
                            :type :stream :protocol :tcp)))
      (handler-case
        (sb-bsd-sockets:socket-connect swank-socket swank-host swank-port)
        (t (c)
           (vom:error "Failed to connect to SWANK: ~s ~s: ~a"
                      swank-host swank-port c)
           (sb-bsd-sockets:socket-close swank-socket)
           (sb-bsd-sockets:socket-close client-socket)
           (return-from vlime-control-thread)))
  
      (labels ((read-loop (socket data-msg eof-msg)
                 (loop
                   (multiple-value-bind
                       (data data-len peer-host peer-port)
                       (handler-case
                         (sb-bsd-sockets:socket-receive socket read-buffer nil)
                         (t (c)
                            (vom:error "read-loop: ~s: ~a" socket c)
                            (swank/backend:send control-thread `(,eof-msg))
                            (return-from read-loop)))
                     (declare (ignore peer-host peer-port))
                     (if (or (not data) (not data-len) (<= data-len 0))
                       (swank/backend:send control-thread `(,eof-msg))
  