DebugView.st
changeset 18451 a0e65694b34b
parent 18434 ae82fa7f3a6c
child 18452 e834a04cd4fa
equal deleted inserted replaced
18450:d5a70e85a077 18451:a0e65694b34b
  1656     1 to:5 do:[:i |
  1656     1 to:5 do:[:i |
  1657         found isNil ifTrue:[
  1657         found isNil ifTrue:[
  1658             con := aContextArray at:i ifAbsent:nil.
  1658             con := aContextArray at:i ifAbsent:nil.
  1659             con notNil ifTrue:[
  1659             con notNil ifTrue:[
  1660                 sel := con selector ? ''.
  1660                 sel := con selector ? ''.
       
  1661                 sel == #halt ifTrue:[^ i+1].
       
  1662                 
  1661                 (sel isSymbol
  1663                 (sel isSymbol
  1662                 and:[ (sel startsWith:'raise')
  1664                 and:[ (sel startsWith:'raise')
  1663                 and:[ ((rcvr := con receiver) isProtoObject not)
  1665                 and:[ ((rcvr := con receiver) isProtoObject not)
  1664                 and:[ rcvr isExceptionCreator]]]) ifTrue:[
  1666                 and:[ rcvr isExceptionCreator]]]) ifTrue:[
  1665                     offset := i.
  1667                     offset := i.
  1675                     ].
  1677                     ].
  1676                 ].
  1678                 ].
  1677             ].
  1679             ].
  1678         ].
  1680         ].
  1679     ].
  1681     ].
  1680 "/ Transcript showCR:con.
  1682 
  1681 "/ Transcript show:'1 '; showCR:found.
  1683     "/ Transcript showCR:con.
       
  1684     "/ Transcript showCR:con receiver.
       
  1685     "/ Transcript showCR:(aContextArray at:1).
       
  1686     "/ Transcript show:'1 '; showCR:found.
  1682 
  1687 
  1683     found isNil ifTrue:[
  1688     found isNil ifTrue:[
  1684         "/ this is a kludge, but convenient.
  1689         "/ this is a kludge, but convenient.
  1685         "/ show the place where the error (divisionByZero...) happend,
  1690         "/ show the place where the error (divisionByZero...) happend,
  1686         "/ not where the signal was raised.
  1691         "/ not where the signal was raised.
  1872     ^ offset
  1877     ^ offset
  1873 
  1878 
  1874     "Created: / 17-11-2001 / 20:37:49 / cg"
  1879     "Created: / 17-11-2001 / 20:37:49 / cg"
  1875     "Modified: / 28-08-2013 / 20:23:35 / cg"
  1880     "Modified: / 28-08-2013 / 20:23:35 / cg"
  1876     "Modified (format): / 13-02-2017 / 19:59:43 / cg"
  1881     "Modified (format): / 13-02-2017 / 19:59:43 / cg"
       
  1882     "Modified: / 10-10-2018 / 12:21:45 / Claus Gittinger"
  1877 !
  1883 !
  1878 
  1884 
  1879 withDebuggingFlagSetDo:aBlock
  1885 withDebuggingFlagSetDo:aBlock
  1880     "mark this process as a process executing a debugger.
  1886     "mark this process as a process executing a debugger.
  1881      This can be used to not delay on certain operations (e.g. Lazy and Bridge proxies."
  1887      This can be used to not delay on certain operations (e.g. Lazy and Bridge proxies."