ref: e29d8a3ecad734967cdcf2d4ce222ab27e9c524b
parent: dbbe9d37500219b61132266029c1d8f42378c01c
author: Ben Harris <bjh21@bjh21.me.uk>
date: Sat Oct 15 16:46:28 EDT 2022
Add an assertion to check the format of encoded parameters Whenever the midend calls encode_params, it also checks that the result is a printable ASCII string that doesn't contain '#' or ':'. Parameter strings are embedded in save files, so they have to fit within ASCII. They can't contain '#' or ':' because those delimit the parameter section of a game ID. Nothing explicitly says they can't contain control characters, but those would be a particularly egregious violation of the recommendation that parameter strings be easy to type into a shell.