[3.14] gh-154580: Fix python-gdb.py pretty-printing non-ASCII strings in non-UTF-8 locales (GH-154581) (GH-154636)
The gdb pretty-printer used locale.getpreferredencoding() to decide whether to
escape a character, but gdb writes its output in its host charset. Use
gdb.host_charset() instead. test_strings had the same problem.
(cherry picked from commit
6cb93bd039ec1c5e0909d2d75cfc4fb3641c693b)
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>