phetsims / unit-rates

"Unit Rates" is an educational simulation in HTML5, by PhET Interactive Simulations.
GNU General Public License v3.0
0 stars 2 forks source link

Uncaught Error: reentry detected, value=null, oldValue=9 #216

Closed pixelzoom closed 4 years ago

pixelzoom commented 4 years ago

Noted by @KatieWoe during ES6 module migration testing. Unknown whether this is related to ES6 module migration.

Steps to reproduced:

  1. Start the sim with ?ea
  2. Go to Shopping Lab screen
  3. Enter '9' in the Double Number Line numerator
  4. Enter '9' in the Double Number Line denominator

This Error occurs:

Uncaught Error: Assertion failed: reentry detected, value=null, oldValue=9
    at window.assertions.assertFunction (assert.js?bust=1583857607570:22)
    at Property._notifyListeners (Property.js:273)
    at Property.set (Property.js:175)
    at Property.reset (Property.js:339)
    at MarkerEditor.reset (MarkerEditor.js:68)
    at markerEditorObserver (DoubleNumberLineAccordionBox.js:164)
    at TinyEmitter.emit (TinyEmitter.js:65)
    at Property._notifyListeners (Property.js:276)
    at Property.set (Property.js:175)
    at Property.set value [as value] (Property.js:346)

The numerator value gets cleared and the sim looks like this:

screenshot_155
pixelzoom commented 4 years ago

Using the shas that were recorded just before ES6 module migration (see https://github.com/phetsims/chipper/issues/875#issuecomment-592105084), I demonstrated that this problem occurred before migration, and is therefore unrelated to migration.

pixelzoom commented 4 years ago

Also fails on the Shopping screen with denominator 5 and numerator 2, which happens to be a "correct" answer.

Uncaught Error: Assertion failed: reentry detected, value=null, oldValue=2
    at window.assertions.assertFunction (assert.js?bust=1583290850331:22)
    at Property._notifyListeners (Property.js:273)
    at Property.set (Property.js:175)
    at Property.reset (Property.js:339)
    at MarkerEditor.reset (MarkerEditor.js:68)
    at markerEditorObserver (DoubleNumberLineAccordionBox.js:164)
    at TinyEmitter.emit (TinyEmitter.js:65)
    at Property._notifyListeners (Property.js:276)
    at Property.set (Property.js:175)
    at Property.set value [as value] (Property.js:346)
screenshot_164
pixelzoom commented 4 years ago

Fixed, closing.