Opened 9 years ago

Closed 9 years ago

#686 closed defect (worksforme)

Pressing ENTER with an active selection in the listener causes Hemlock to crash

Reported by: rongarret Owned by:
Priority: normal Milestone:
Component: IDE Version: trunk
Keywords: Cc:

Description

SLSIA. This crash occurs only with an active selection in the listener, not when the cursor is on a close paren, and not when there is an active selection in an editor window.

Change History (3)

comment:1 Changed 9 years ago by rme

I just tried to duplicate this with r13700, and I can't get a crash. Any chance for more detailed steps to reproduce or perhaps a backtrace?

comment:2 Changed 9 years ago by rongarret

I'm on version 1.6-dev-r13709M-trunk. (How can I possibly be on a higher version than you?)

Steps to reproduce: Open a listener window. Type in any form. Hit return. Now select the form you typed in and hit ENTER. Problem is 100% reproducible. Backtrace (from the altconsole of course) follows.

Lisp error: "value NIL is not of the expected type STRUCTURE."
 (44B348) : 0 (PRINT-CALL-HISTORY :CONTEXT NIL :PROCESS NIL :ORIGIN NIL :DETAILED-P T :COUNT 1152921504606846975 :START-FRAME-NUMBER 0 :STREAM #<SYNONYM-STREAM to *TERMINAL-IO* #x302000BDF0CD> :PRINT-LEVEL 2 :PRINT-LENGTH 5 :SHOW-INTERNAL-FRAMES NIL :FORMAT :TRADITIONAL) 845
  (&KEY :CONTEXT :PROCESS :ORIGIN :DETAILED-P :COUNT :START-FRAME-NUMBER :STREAM :PRINT-LEVEL :PRINT-LENGTH :SHOW-INTERNAL-FRAMES :FORMAT)
   CCL::CONTEXT: NIL
   PROCESS: NIL
   CCL::ORIGIN: NIL
   CCL::DETAILED-P: T
   COUNT: 1152921504606846975
   CCL::START-FRAME-NUMBER: 0
   STREAM: #<SYNONYM-STREAM to *TERMINAL-IO* #x302000BDF0CD>
   CCL::PRINT-LEVEL: 2
   CCL::PRINT-LENGTH: 5
   CCL::SHOW-INTERNAL-FRAMES: NIL
   FORMAT: :TRADITIONAL

  CCL::FRAME-NUMBER: 0
  *BACKTRACE-PRINT-LEVEL*: 2
  *BACKTRACE-PRINT-LENGTH*: 5
  *BACKTRACE-FORMAT*: :TRADITIONAL
  *STANDARD-OUTPUT*: #<SYNONYM-STREAM to *TERMINAL-IO* #x302000BDF0CD>
  *PRINT-CIRCLE*: NIL

 (44B4B0) : 1 (MAYBE-LOG-CALLBACK-ERROR #<TYPE-ERROR #x302000F17F4D>) 1605
  (CONDITION)
   CONDITION: #<TYPE-ERROR #x302000F17F4D>

  GUI::EMSG: "value NIL is not of the expected type STRUCTURE."
  #:G19245: (ERROR)
  CCL::%HANDLERS%: ((ERROR) (ERROR) (CONDITION #) (CONDITION #))

 (44B508) : 2 (FUNCALL #'#<#<STANDARD-METHOD HEMLOCK-EXT:REPORT-HEMLOCK-ERROR (HI:HEMLOCK-VIEW T T)>> #<HI:HEMLOCK-VIEW #x302000E95ECD> #<TYPE-ERROR #x302000F17F4D> T) 53
  (GUI::VIEW CONDITION GUI::DEBUG-P)
   GUI::VIEW: #<HI:HEMLOCK-VIEW #x302000E95ECD>
   CONDITION: #<TYPE-ERROR #x302000F17F4D>
   GUI::DEBUG-P: T



 (44B538) : 3 (LISP-ERROR-ERROR-HANDLER #<TYPE-ERROR #x302000F17F4D> :DEBUG-P T) 445
  (CONDITION &KEY :DEBUG-P)
   CONDITION: #<TYPE-ERROR #x302000F17F4D>
   HI::DEBUG-P: T

  *STANDARD-OUTPUT*: #<SYNONYM-STREAM to *TERMINAL-IO* #x302000BDF14D>
  #:G25960: (ERROR)
  CCL::%HANDLERS%: ((ERROR) (CONDITION #) (CONDITION #))

 (44B5A8) : 4 (SIGNAL #<TYPE-ERROR #x302000F17F4D>) 973
  (CONDITION &REST CCL::ARGS)
   CONDITION: #<TYPE-ERROR #x302000F17F4D>
   CCL::ARGS: NIL

  CCL::%HANDLERS%: ((CONDITION #) (CONDITION #))
  CCL::TAG: (ERROR #<Compiled-function # (Non-Global)  #x30000123A3EF>)
  CCL::HANDLERS: (ERROR #<Compiled-function # (Non-Global)  #x30000123A3EF>)
  CCL::FN: #<Compiled-function (:INTERNAL #) (Non-Global)  #x30000123A3EF>

 (44B600) : 5 (%ERROR #<TYPE-ERROR #x302000F17F4D> NIL 562924) 117
  (CONDITION CCL::ARGS CCL::ERROR-POINTER)
   CONDITION: #<TYPE-ERROR #x302000F17F4D>
   CCL::ARGS: NIL
   CCL::ERROR-POINTER: 562924



 (44B628) : 6 (FUNCALL #'#<(:INTERNAL CCL::%XERR-DISP)>) 4613
  NIL

  CCL::FRAME-PTR: 562924
  CCL::FN: #<Compiled-function HEMLOCK-INTERFACE:COUNT-CHARACTERS #x300001199E5F>
  CCL::OP0: 205
  CCL::OP1: 215
  CCL::OP2: 54
  CCL::SKIP: -1
  CCL::TYPENAME: STRUCTURE
  CCL::XP: #<A Foreign Pointer #x7FFF5FBFEFE0>
  CCL::XCF: #<A Foreign Pointer #x44B760>

 (44B680) : 7 (FUNCALL-WITH-ERROR-REENTRY-DETECTION #<COMPILED-LEXICAL-CLOSURE (:INTERNAL CCL::%XERR-DISP) #x49C58F>) 181
  (CCL::THUNK)
   CCL::THUNK: #<COMPILED-LEXICAL-CLOSURE (:INTERNAL CCL::%XERR-DISP) #x49C58F>

  COUNT: 0
  CCL::*ERROR-REENTRY-COUNT*: 0

 (44B6C0) : 8 (FUNCALL #'#<CCL::%XERR-DISP> 17591849975030) 501
  (#:G140196)
   #:G140196: 17591849975030

  #:G140205: #<A Foreign Pointer [stack-allocated] #x7FFF5FBFE7B0>
  CCL::XP: #<A Foreign Pointer #x7FFF5FBFEFE0>
  CCL::XCF: #<A Foreign Pointer #x44B760>
  #:G140206: #<COMPILED-LEXICAL-CLOSURE (:INTERNAL CCL::%XERR-DISP) #x49C58F>

 (44B6F8) : 9 (%PASCAL-FUNCTIONS% 2 17591849975030) 365
  (CCL::INDEX CCL::ARGS-PTR-FIXNUM)
   CCL::INDEX: 2
   CCL::ARGS-PTR-FIXNUM: 17591849975030

  CCL::LISP-FUNCTION: #<Compiled-function CCL::%XERR-DISP (Non-Global)  #x3000005705BF>
  WITHOUT-INTERRUPTS: NIL
  CCL::*CALLBACK-TRACE-P*: NIL

*(44B760) : 10 (COUNT-CHARACTERS #<Hemlock Region "{bad region}">) 1332
  (HEMLOCK-INTERFACE:REGION)
   HEMLOCK-INTERFACE:REGION: #<Hemlock Region "{bad region}">

  HI::START: #<Hemlock Mark "? ^">
  HI::END: #<Hemlock Mark "? (list 1 2 3)^">
  HI::FIRST-LINE: #<Hemlock Line "? ">
  HI::LAST-LINE: #<Hemlock Line "? (list 1 2 3)">
  COUNT: 4
  HI:LINE: NIL
  HI:LINE: NIL

 (44B7F8) : 11 (REGION-TO-STRING #<Hemlock Region "{bad region}"> NIL) 101
  (HEMLOCK-INTERFACE:REGION &OPTIONAL HI::OUTPUT-STRING)
   HEMLOCK-INTERFACE:REGION: #<Hemlock Region "{bad region}">
   HI::OUTPUT-STRING: NIL



 (44B830) : 12 (EVAL-REGION #<Hemlock Region "{bad region}"> :PACKAGE "CL-USER" :PATH NIL) 301
  (HEMLOCK-INTERFACE:REGION &KEY :PACKAGE :PATH)
   HEMLOCK-INTERFACE:REGION: #<Hemlock Region "{bad region}">
   PACKAGE: "CL-USER"



 (44B880) : 13 (FUNCALL #'#<#<STANDARD-METHOD HI::EXECUTE-HEMLOCK-KEY (HI:HEMLOCK-VIEW T)>> #<HI:HEMLOCK-VIEW #x302000E95ECD> #<Key-Event Enter>) 1085
  (HI::VIEW HI::KEY)
   HI::VIEW: #<HI:HEMLOCK-VIEW #x302000E95ECD>
   HI::KEY: #<Key-Event Enter>

  HI::*SAVED-STANDARD-OUTPUT*: #<SYNONYM-STREAM to *TERMINAL-IO* #x302000BDF14D>
  *STANDARD-OUTPUT*: #<GUI::COCOA-LISTENER-OUTPUT-STREAM #x302000E95A6D>
  HI::MAIN-BINDING: #<Hemlock Command "Editor Execute Expression">
  HI::TRANSPARENT-BINDINGS: NIL
  HI::*LAST-LAST-COMMAND-TYPE*: NIL
  HI::*LAST-PREFIX-ARGUMENT*: NIL

 (44B930) : 14 (FUNCALL #'#<(:INTERNAL (HI::HANDLE-HEMLOCK-EVENT (HI:HEMLOCK-VIEW T)))>) 517
  NIL

  #:G26131: #<RESTART HI::EXIT-EVENT-HANDLER #x49C6FD>
  #:G26127: (#<RESTART HI::EXIT-EVENT-HANDLER #x49C6FD>)
  CCL::%RESTARTS%: ((#<# # #x49C6FD>) (#<# # #x49C99D> #<# # #x49C9ED>) (#<# # #x49CF3D>))
  #:G26132: #<Compiled-function (:INTERNAL #) (Non-Global)  #x30000123A3EF>
  #:G26133: (ERROR #<Compiled-function # (Non-Global)  #x30000123A3EF>)
  CCL::%HANDLERS%: ((ERROR #) (CONDITION #) (CONDITION #))
  HI::KEY: #<Key-Event Enter>
  HI::VIEW: #<HI:HEMLOCK-VIEW #x302000E95ECD>

 (44B9A8) : 15 (INVOKE-MODIFYING-BUFFER-STORAGE #<Hemlock Buffer "Listener"> #<COMPILED-LEXICAL-CLOSURE (:INTERNAL #) #x302000F1837F>) 453
  (GUI::BUFFER GUI::THUNK)
   GUI::BUFFER: #<Hemlock Buffer "Listener">
   GUI::THUNK: #<COMPILED-LEXICAL-CLOSURE (:INTERNAL #) #x302000F1837F>

  GUI::OLD: NIL

 (44BA08) : 16 (FUNCALL #'#<#<STANDARD-METHOD HI::HANDLE-HEMLOCK-EVENT (HI:HEMLOCK-VIEW T)>> #<HI:HEMLOCK-VIEW #x302000E95ECD> #<Key-Event Enter>) 893
  (HI::VIEW HI::KEY)
   HI::VIEW: #<HI:HEMLOCK-VIEW #x302000E95ECD>
   HI::KEY: #<Key-Event Enter>

  #:ABORT-BREAK: #<RESTART ABORT-BREAK #x49C9ED>
  #:ABORT: #<RESTART ABORT #x49C99D>
  #:G26124: (#<RESTART ABORT #x49C99D> #<RESTART ABORT-BREAK #x49C9ED>)
  CCL::%RESTARTS%: ((#<# # #x49C99D> #<# # #x49C9ED>) (#<# # #x49CF3D>))
  HI::*CURRENT-VIEW*: #<HI:HEMLOCK-VIEW #x302000E95ECD>
  HI::*CURRENT-BUFFER*: #<Hemlock Buffer "Listener">
  HI::*NEXT-VIEW-START*: NIL
  HI::TEXT-BUFFER: #<Hemlock Buffer "Listener">
  MOD: (54 79 . 91)

 (44BAC0) : 17 (%CALL-NEXT-METHOD (NIL #<STANDARD-METHOD HI::HANDLE-HEMLOCK-EVENT #> . 563077)) 1021
  (CCL::MAGIC &REST CCL::ARGS)
   CCL::MAGIC: (NIL #<STANDARD-METHOD HI::HANDLE-HEMLOCK-EVENT #> . 563077)
   CCL::ARGS: NIL

  CCL::NEXT-METHODS: (#<STANDARD-METHOD HI::HANDLE-HEMLOCK-EVENT #>)
  CCL::ARGS: 563077
  CDR: NIL
  METHOD-FUNCTION: #<METHOD-FUNCTION HI::HANDLE-HEMLOCK-EVENT (HI:HEMLOCK-VIEW T)>
  #:G103521: (NIL #<STANDARD-METHOD HI::HANDLE-HEMLOCK-EVENT #> . 563077)
  #:G103522: #<METHOD-FUNCTION HI::HANDLE-HEMLOCK-EVENT (HI:HEMLOCK-VIEW T)>
  #:G103523: 563077

 (44BB58) : 18 (FUNCALL #'#<#<STANDARD-METHOD HI::HANDLE-HEMLOCK-EVENT :AROUND (HI:HEMLOCK-VIEW T)>> #<HI:HEMLOCK-VIEW #x302000E95ECD> #<Key-Event Enter>) 173
  (GUI::VIEW GUI::EVENT)
   GUI::VIEW: #<HI:HEMLOCK-VIEW #x302000E95ECD>
   GUI::EVENT: #<Key-Event Enter>

  #:NEXT-METHOD-CONTEXT: (NIL #<STANDARD-METHOD HI::HANDLE-HEMLOCK-EVENT #> . 563077)
  #:G40698: #<NS-AUTORELEASE-POOL <NSAutoreleasePool: 0x5bf150> (#x5BF150)>

 (44BBC0) : 19 (%%STANDARD-COMBINED-METHOD-DCODE (#<STANDARD-METHOD HI::HANDLE-HEMLOCK-EVENT :AROUND #> #<STANDARD-METHOD HI::HANDLE-HEMLOCK-EVENT #>) 563077) 709
  (CCL::METHODS CCL::ARGS)
   CCL::METHODS: (#<STANDARD-METHOD HI::HANDLE-HEMLOCK-EVENT :AROUND #> #<STANDARD-METHOD HI::HANDLE-HEMLOCK-EVENT #>)
   CCL::ARGS: 563077

  CCL::CAR-METHS: #<STANDARD-METHOD HI::HANDLE-HEMLOCK-EVENT :AROUND (HI:HEMLOCK-VIEW T)>
  CCL::CELL-2: (#<STANDARD-METHOD HI::HANDLE-HEMLOCK-EVENT #> . 563077)
  CCL::MAGIC: (NIL #<STANDARD-METHOD HI::HANDLE-HEMLOCK-EVENT #> . 563077)
  #:G103457: (NIL #<STANDARD-METHOD HI::HANDLE-HEMLOCK-EVENT #> . 563077)
  #:G103458: #<METHOD-FUNCTION HI::HANDLE-HEMLOCK-EVENT :AROUND (HI:HEMLOCK-VIEW T)>
  #:G103459: 563077

 (44BC40) : 20 (FUNCALL #'#<GUI::|-[HemlockTextstorageTextView keyDown:]|> 17591849975386) 1261
  (#:G40664)
   #:G40664: 17591849975386

  #:G40679: #<A Foreign Pointer [stack-allocated] #x7FFF5FBFF2D0>
  #:G40665: #<A Foreign Pointer [stack-allocated] #x7FFF5FBFF2D0>
  #:COMPILER-VAR: (NIL)
  #:G40669: #<COMPILED-LEXICAL-CLOSURE (:INTERNAL GUI::|-[HemlockTextstorageTextView keyDown:]|) #x49CBDF>
  #:G40680: (CONDITION #<COMPILED-LEXICAL-CLOSURE # #x49CBDF>)
  CCL::%HANDLERS%: ((CONDITION #) (CONDITION #))
  GUI::SELF: #<HEMLOCK-TEXT-VIEW <HemlockTextView: 0x5bb690>
    Frame = {{0.00, 0.00}, {571.00, 882.00}}, Bounds = {{0.00, 0.00}, {571.00, 882.00}}
    Horizontally resizable: NO, Vertically resizable: YES
    MinSize = {571.00, 882.00}, MaxSize = {10000000.00, 10000000.00}
 (#x5BB690)>
  GUI::EVENT: #<NS-EVENT NSEvent: type=KeyDown loc=(0,934) time=165063.4 flags=0x100 win=0x0 winNum=1577 ctxt=0x0 chars="" unmodchars="" repeat=0 keyCode=76 (#x5A9110)>
  GUI::VIEW: #<HI:HEMLOCK-VIEW #x302000E95ECD>
  GUI::QUOTE-P: NIL
  GUI::HEMLOCK-KEY: #<Key-Event Enter>

 (44BCC0) : 21 (%PASCAL-FUNCTIONS% 73 17591849975386) 365
  (CCL::INDEX CCL::ARGS-PTR-FIXNUM)
   CCL::INDEX: 73
   CCL::ARGS-PTR-FIXNUM: 17591849975386

  CCL::LISP-FUNCTION: #<Compiled-function GUI::|-[HemlockTextstorageTextView keyDown:]| (Non-Global)  #x3000014E2DBF>
  WITHOUT-INTERRUPTS: NIL
  CCL::*CALLBACK-TRACE-P*: NIL

 (44BD78) : 22 (FUNCALL #'#<Anonymous Function #x300000E6CA4F> #<A Foreign Pointer [stack-allocated] (:* #) #x7FFF5FBFF880> #<A Foreign Pointer #x7FFF808EACB8> #<NS-EVENT NSEvent: type=KeyDown loc=(0,934) time=165063.4 flags=0x100 win=0x0 winNum=1577 ctxt=0x0 chars="" unmodchars="" repeat=0 keyCode=76 (#x5A9110)>) 373
  (#:G5748 #:G5749 CCL::ARG0)
   #:G5748: #<A Foreign Pointer [stack-allocated] (:* #) #x7FFF5FBFF880>
   #:G5749: #<A Foreign Pointer #x7FFF808EACB8>
   CCL::ARG0: #<NS-EVENT NSEvent: type=KeyDown loc=(0,934) time=165063.4 flags=0x100 win=0x0 winNum=1577 ctxt=0x0 chars="" unmodchars="" repeat=0 keyCode=76 (#x5A9110)>



 (44BDA8) : 23 (%CALL-NEXT-OBJC-METHOD #<LISP-APPLICATION <LispApplication: 0x5477b0> (#x5477B0)> #<OBJC:OBJC-CLASS GUI::LISP-APPLICATION (#x515250)> #<A Foreign Pointer #x7FFF808EACB8> (:VOID :ID) #<NS-EVENT NSEvent: type=KeyDown loc=(0,934) time=165063.4 flags=0x100 win=0x0 winNum=1577 ctxt=0x0 chars="" unmodchars="" repeat=0 keyCode=76 (#x5A9110)>) 773
  (CCL::SELF CLASS CCL::SELECTOR CCL::SIG &REST CCL::ARGS)
   CCL::SELF: #<LISP-APPLICATION <LispApplication: 0x5477b0> (#x5477B0)>
   CLASS: #<OBJC:OBJC-CLASS GUI::LISP-APPLICATION (#x515250)>
   CCL::SELECTOR: #<A Foreign Pointer #x7FFF808EACB8>
   CCL::SIG: (:VOID :ID)
   CCL::ARGS: (#<NS-EVENT NSEvent: type=KeyDown loc=(0,934) time=165063.4 flags=0x100 win=0x0 winNum=1577 ctxt=0x0 chars="" unmodchars="" repeat=0 keyCode=76 (#x5A9110)>)

  CCL::S: #<A Foreign Pointer [stack-allocated] (:* #) #x7FFF5FBFF880>
  CCL::SIGINFO: #S(CCL::OBJC-METHOD-SIGNATURE-INFO :TYPE-SIGNATURE (:VOID :ID) :FUNCTION #<Anonymous Function #x300000E6C83F> ...)
  FUNCTION: #<Anonymous Function #x300000E6CA4F>

 (44BE08) : 24 (FUNCALL #'#<GUI::|-[LispApplication sendEvent:]|> 17591849975610) 965
  (#:G19424)
   #:G19424: 17591849975610

  #:G19439: #<A Foreign Pointer [stack-allocated] #x7FFF5FBFF9D0>
  #:G19425: #<A Foreign Pointer [stack-allocated] #x7FFF5FBFF9D0>
  #:COMPILER-VAR: (NIL)
  #:G19429: #<COMPILED-LEXICAL-CLOSURE (:INTERNAL GUI::|-[LispApplication sendEvent:]|) #x49CD6F>
  #:G19440: (CONDITION #<COMPILED-LEXICAL-CLOSURE # #x49CD6F>)
  CCL::%HANDLERS%: ((CONDITION #))
  GUI::SELF: #<LISP-APPLICATION <LispApplication: 0x5477b0> (#x5477B0)>
  GUI::E: #<NS-EVENT NSEvent: type=KeyDown loc=(0,934) time=165063.4 flags=0x100 win=0x0 winNum=1577 ctxt=0x0 chars="" unmodchars="" repeat=0 keyCode=76 (#x5A9110)>
  CCL::ARGS: (#<NS-EVENT NSEvent: type=KeyDown loc=(0,934) time=165063.4 flags=0x100 win=0x0 winNum=1577 ctxt=0x0 chars="" unmodchars="" repeat=0 keyCode=76 (#x5A9110)>)

 (44BE78) : 25 (%PASCAL-FUNCTIONS% 15 17591849975610) 365
  (CCL::INDEX CCL::ARGS-PTR-FIXNUM)
   CCL::INDEX: 15
   CCL::ARGS-PTR-FIXNUM: 17591849975610

  CCL::LISP-FUNCTION: #<Compiled-function GUI::|-[LispApplication sendEvent:]| (Non-Global)  #x30000113580F>
  WITHOUT-INTERRUPTS: NIL
  CCL::*CALLBACK-TRACE-P*: NIL

 (44BF30) : 26 (FUNCALL #'#<Anonymous Function #x300000DD7B3F> #<LISP-APPLICATION <LispApplication: 0x5477b0> (#x5477B0)> #S(CCL::OBJC-SELECTOR :NAME "run" :%SEL #<A Foreign Pointer #x7FFF808EAC94>)) 173
  (#:G3257 #:G3258)
   #:G3257: #<LISP-APPLICATION <LispApplication: 0x5477b0> (#x5477B0)>
   #:G3258: #S(CCL::OBJC-SELECTOR :NAME "run" :%SEL #<A Foreign Pointer #x7FFF808EAC94>)



 (44BF50) : 27 (FUNCALL #'#<(:OBJC-DISPATCH NEXTSTEP-FUNCTIONS:|run|)> ???) 565
  NIL



 (44BF88) : 28 (EVENT-LOOP NIL) 421
  (&OPTIONAL GUI::END-TEST)
   GUI::END-TEST: NIL

  GUI::APP: #<LISP-APPLICATION <LispApplication: 0x5477b0> (#x5477B0)>
  GUI::THREAD: #<APPKIT-PROCESS Initial(0) [Active] #x3020000B9A1D>
  #:ABORT: #<RESTART ABORT #x49CF3D>
  #:G21702: (#<RESTART ABORT #x49CF3D>)
  CCL::%RESTARTS%: ((#<# # #x49CF3D>))

comment:3 Changed 9 years ago by rme

  • Resolution set to worksforme
  • Status changed from new to closed

I tried this again on the current trunk, and I can't reproduce it.

Note: See TracTickets for help on using tickets.