<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
    <title></title>
  </head>
  <body bgcolor="#ffffff" text="#000000">
    On 10/29/2023 6:28 PM, Nicolás Papagna Maldonado via Cuis-dev wrote:
    <blockquote
cite="mid:CADGn7BMDRSHHS=4JwuEcEc-mtrvQgHXQroxTvnnTK0j5v2Rbvg@mail.gmail.com"
      type="cite">
      <div dir="ltr">Hi folks,
        <div><br>
        </div>
        <div>The attached changeset fixes a bug that caused the image to
          freeze when inspecting objects with huge #<font
            face="monospace">printOn:</font> results.</div>
        <div><br>
        </div>
        <div>To reproduce the error:</div>
        <div>
          <ol>
            <li>Open a workspace</li>
            <li>Evaluate <font face="monospace">CompiledMethod
                allInstances inject: Dictionary new into: [ :dict
                :method |  dict at: method put: method sourceCode. dict
                ]</font></li>
            An inspector will be opened on the dictionary created above
            <li>Click on <font face="monospace">self</font></li>
            <li>Notice the image hangs while waiting for the <font
                face="monospace">#printOn: </font>message send.</li>
          </ol>
          To fix this bug, I limited the time to print the selected item
          to 300 milliseconds and showed an appropriate error message
          when that happened.</div>
        <div><br>
        </div>
        <div>LMK your thoughts.</div>
        <div><br>
        </div>
        <div>Cheers,</div>
        <div>Nico PM</div>
      </div>
    </blockquote>
    <br>
    Hi Nico,<br>
    <br>
    I think that using #valueWithin:onTimeout: is like shooting a
    mosquito with a gun. I preferred a solution with two parts:<br>
    - printing a Dictionary doesn't need to sort the keys. Dictionaries
    are not sorted.<br>
    - Any stepping morph that takes longer than its #stepTime will be
    limited in its stepping time so GUI stays (barely) responsive.<br>
    <br>
    Updates now at GitHub.<br>
    <br>
    Thanks,<br>
    <pre class="moz-signature" cols="72">-- 
Juan Vuletich
cuis.st
github.com/jvuletich
researchgate.net/profile/Juan-Vuletich
independent.academia.edu/JuanVuletich
patents.justia.com/inventor/juan-manuel-vuletich
linkedin.com/in/juan-vuletich-75611b3
twitter.com/JuanVuletich</pre>
  </body>
</html>