<html><head></head><body>
    <p>To give you more context, I am looking into gaurding the Vat's
      eventualProcess to restart when curtailed. This method is the main
      processing event loop. Below that is the #restartEventLoop method.</p>
    <blockquote>
      <p>PriorityVat>>#processSends<br/>
        <br/>
            [<br/>
                [Processor yield.<br/>
                self nextPriorityMsg ifNotNil: [:msg | msg value].<br/>
                normalQ notNil ] ifCurtailed: [self restartEventLoop]]
        whileTrue<br/>
            <br/>
        PriorityVat>>#restartEventLoop<br/>
        <br/>
            | currentEventLoop |<br/>
            (Processor activeProcess == eventualProcess) ifTrue: [<br/>
                eventualProcess ifNotNil: [:ea | currentEventLoop :=
        ea].<br/>
                eventualProcess := nil.<br/>
                eventualProcess := EventualProcess newOnVat: self.<br/>
                eventualProcess resumeAsProcess.<br/>
                currentEventLoop ifNotNil: [:ea | ea terminate ]].</p>
    </blockquote>
    <p>The termination is where the #stepToCallee error occurs.</p>
    <p>K, r<br/>
    </p>
    <div class="moz-cite-prefix">On 7/25/20 8:13 AM, Robert Withers
      wrote:<br/>
    </div>
    <blockquote type="cite" cite="mid:a7a1a628-8d90-39f1-bd66-b387bed1e59b@pm.me">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
      <p>Hi y'all,</p>
      <p>I am getting an error when terminating my process and it loops
        infinitely stacking this error recursively.</p>
      <blockquote>
        <p>nil doesNotUnderstand: stepToCallee<br/>
        </p>
      </blockquote>
      <p>This is called from Context>>#runUntilErrorOrReturnFrom:
        aSender after this method has tried to get the topContext.
        Somehow topContext is nil, and I am guessing that returns from
        one of the context pops, in the following code from
        #runUntilErrorOrReturnFrom:. </p>
      <blockquote>
        <p>    "Control resumes here once above ensure block or
          exception handler is executed"<br/>
              ^ error ifNil: [<br/>
                  "No error was raised, remove ensure context by
          stepping until popped"<br/>
                  [ctxt isDead] whileFalse: [topContext := topContext
          stepToCallee].<br/>
                  {topContext. nil}<br/>
          <br/>
        </p>
      </blockquote>
      <p>Have I setup the process incorrectly to receive this error or
        is something else the issue?<br/>
      </p>
      <p>Appreciated.</p>
      <p>Kindly,<br/>
        rabbit<br/>
      </p>
    </blockquote>
  

</body></html>