shithub: puzzles

Download patch

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.