[armedbear] #439: Quicklisp RFC2388 case of no meaningful error

armedbear armedbear-devel at common-lisp.net
Fri Feb 3 07:09:54 UTC 2017


#439: Quicklisp RFC2388 case of no meaningful error
---------------------------+----------------------------------------
      Reporter:  mevenson  |      Owner:
          Type:  defect    |     Status:  new
      Priority:  major     |  Milestone:  1.5.0
     Component:  other     |    Version:  1.5.0-dev
    Resolution:            |   Keywords:  quicklisp-rfc2388 debugger
Parent Tickets:            |
---------------------------+----------------------------------------

Comment (by mevenson):

 Answer to #1 ("Why does SLIME not catch this error?"): because
 SeekableStringWriter "swallows" the Java runtime exception rather than
 converting into a JavaExeception type.

 Patch like this
 {{{
 diff -r 250b651f6d84 src/org/armedbear/lisp/SeekableStringWriter.java
 --- a/src/org/armedbear/lisp/SeekableStringWriter.java  Thu Feb 02
 09:23:00 2017 +0000
 +++ b/src/org/armedbear/lisp/SeekableStringWriter.java  Fri Feb 03
 08:08:27 2017 +0100
 @@ -36,6 +36,7 @@
  import static org.armedbear.lisp.Lisp.*;

  import java.io.Writer;
 +import java.text.MessageFormat;

  public final class SeekableStringWriter extends Writer {
      private final StringBuffer stringBuffer;
 @@ -81,11 +82,15 @@

      @Override
      public void write(int c) {
 +      try {
          if (offset == stringBuffer.length())
              stringBuffer.append((char) c);
          else
              stringBuffer.setCharAt(offset, (char) c);
          ++offset;
 +      } catch (IndexOutOfBoundsException e) {
 +        error(new JavaException(e));
 +      }
      }

      @Override
 }}}

--
Ticket URL: <http://abcl.org/trac/ticket/439#comment:1>
armedbear <http://abcl.org>
armedbear


More information about the armedbear-ticket mailing list