In my mudlib, running FluffOS v2019.2020082501, attempts to login with an invalid username will add that username to a mapping in an object. That object is then saved via save_object() and restored via restore_object().
A WWW browser connecting to the mud using SSL/TLS generates several invalid username login attempts involving non-ASCII characters. This data is successfully written to disk via save_object() but a runtime error is generated when restore_object() is called:
restore_object(): Illegal array format while restoring <variable_name>
The data being restored looks like so:
_Log ([ "system": ({ ({ "security", 1605115524, "Login attempt with invalid username, '<non-ASCII characters>' from x.x.x.x", }), }), ])
I believe this is a bug with restore_object().
For testing I split that array out into a series of string variables and tried to restore individual strings instead of an array of strings.
This caused restore_object() to throw the following runtime:
restore_object(): Invalid utf8 string while restoring <variable_name>