To replicate:
1. In Squeak 4.3, open a new RectangleMorph.
2. Bring up the explorer on this morph using the halo.
3. Put the following into the code window and doIt:
self color: Color transparent. self borderWidth: 1
4. Save to a .morph using the halo.
5. In Squeak 6.0, open a fileList, navigate to the directory containing the .morph above, click on the entry for that file, click load as morph.
You will get an error titled:
Key not found: Color
I don't know if this list allows attachments or not -- I'll attach a .morph that shows this error and hope it goes through.
I've got other issues loading .morphs from my own subclasses of RectangleMorph where the borderColor is wrong, but I don't have a simple test case for a bug report yet.
-Thanks in advance, Jim
1. It loads perfectly well in a 5.3 image 2. It fails to load in a 6 image because the Dictionary scan as part of the SmartRefStream>>#verifyStructure returns 9 instead of the correct 3 and thus returns nil instead of the Color. If I rehash the 'structures' Dictionary everything is ok. 3. The problem seems to start in SmartRefStream>#next, where the 'ss' loaded has at 4 a Dictionary of superclasses that also seems to need rehashing.
So, just a WAG late at night, but it looks like something changed wrt hashing.
On 2023-04-02, at 9:13 PM, Jim Rosenberg jr@amanue.com wrote:
<test_RectangleMorph_040223_2.morph>
tim -- tim Rowledge; tim@rowledge.org; http://www.rowledge.org/tim Useful Latin Phrases:- Gramen artificiosum odi = I hate Astroturf.
On 2023-04-02, at 10:19 PM, tim Rowledge tim@rowledge.org wrote:
- It loads perfectly well in a 5.3 image
- It fails to load in a 6 image because the Dictionary scan as part of the SmartRefStream>>#verifyStructure returns 9 instead of the correct 3 and thus returns nil instead of the Color. If I rehash the 'structures' Dictionary everything is ok.
- The problem seems to start in SmartRefStream>#next, where the 'ss' loaded has at 4 a Dictionary of superclasses that also seems to need rehashing.
So, just a WAG late at night, but it looks like something changed wrt hashing.
Yeah - if I simply stick a rehash of 'ss' and 'structures' in that method it loads ok. I kinda doubt that is a truly principled solution though.
tim -- tim Rowledge; tim@rowledge.org; http://www.rowledge.org/tim Strange OpCodes: DPC: Double Precision Crash
Yeah - if I simply stick a rehash of 'ss' and 'structures' in that method it loads ok. I kinda doubt that is a truly principled solution though.
This should be fixed in trunk - that's an issue I signaled a long time ago. See point 8 in this post:
http://lists.squeakfoundation.org/pipermail/squeak-dev/2022-August/221980.ht...
Stef
Unfortunately the version of SmartRefStream>>#next in the 22517 update is still the original tk version from 2000
On 2023-04-03, at 12:31 AM, Stéphane Rollandin lecteur@zogotounga.net wrote:
Yeah - if I simply stick a rehash of 'ss' and 'structures' in that method it loads ok. I kinda doubt that is a truly principled solution though.
This should be fixed in trunk - that's an issue I signaled a long time ago. See point 8 in this post:
http://lists.squeakfoundation.org/pipermail/squeak-dev/2022-August/221980.ht...
Stef
tim -- tim Rowledge; tim@rowledge.org; http://www.rowledge.org/tim Science is imagination equipped with grappling hooks.
squeak-dev@lists.squeakfoundation.org