setting structure type "M" on any valid segment crashes client
|Opened on:||Monday, July 6, 2015 - 20:56|
|Last modified:||Tuesday, September 8, 2015 - 19:55|
This is a kind of corollary to http://fold.it/portal/node/2000613
A recipe that sets secondary structure type "M" on any valid segment crashes the client on Windows.
To recreate this issue:
1. Open any puzzle, for example 1107
2. Open the recipe editor, click "New (ScriptV2)"
3. Paste this recipe
structure.SetSecondaryStructure ( 15, "M" )
4. Click "Run"
5. The client crashes.
6. An unhandled exception appears in log.txt
7. debug.txt is not created or updated
This error is specific to type "M", other totally invalid codes such as "Q" or "!" do not produce a crash.
Also, segment numbers such as -17 and 9999 are quietly tolerated.
Even absurd efforts like
structure.SetSecondaryStructure ( "fred", 32 )
don't cause a crash.
An invalid segment number does offer protection, so
structure.SetSecondaryStructure ( 9999, "M" )
does not cause a crash.
In general, it seems like having structure.SetSecondaryStructure and similar functions return true on success and false on failure (or inaction) would be beneficial.