mirror of
https://github.com/pi-hole/FTL.git
synced 2026-10-10 07:39:27 +01:00
`printTOMLstring()` escapes strings with `escape_json()`, which leaves U+007F as a raw byte. TOML forbids a raw DEL in basic strings and tomlc17 rejects the file with "invalid char in string". A config string containing DEL, which the API accepts, thus made `pihole.toml` unparsable for FTL itself. Every further write rotated another broken copy into `config_backups`, so FTL either fell back to an older backup on the next start, losing all later changes, or, once all backups were broken, started with the default config and an empty password. Write DEL as `\u007F` in TOML output. The CLI output is unchanged. Signed-off-by: 010011110 <duckenheim@posteo.de>